Skip to content

Execute the current unittest file not executing all tests #4567

Closed

Description

Environment data

  • VS Code version: 1.31.1
  • Extension version (available under the Extensions sidebar): 2019.2.5416
  • OS and version: W10 Enterprise 10.0.17134
  • Python version (& distribution if applicable, e.g. Anaconda): 3.6
  • Type of virtual environment used (N/A | venv | virtualenv | conda | ...): N/A
  • Relevant/affected Python packages and their versions: Extension

Expected behaviour

Run all unittests on file

Actual behaviour

Runs only the first unittest.

Steps to reproduce:

  1. Create an unittest class. (class Class(unittest.TestCase):)
  2. Add a method to test.
  3. Add another method to test.
  4. Click right mouse button.
  5. Click "Execute the current unittest file" (Translated from Portuguese, not sure if it's exactly how it shows.
  6. Just the first test will execute, ignoring all others.

Logs

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

test_instancia (test.test_api_infobip.InfobipTestCase) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.001s

OK

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help; turn on source maps to make any tracebacks be useful by running Enable source map support for extension debugging)

[Extension Host] Python Extension: Cached data exists getEnvironmentVariables, c:\Programas\servicosmsf_v2
console.ts:134 [Extension Host] Python Extension: Cached data exists ActivatedEnvironmentVariables, c:\Programas\servicosmsf_v2
console.ts:134 [Extension Host] Python Extension: getActivatedEnvironmentVariables, Class name = b, Arg 1: <Uri:c:\Programas\servicosmsf_v2>, Arg 2: undefined
console.ts:134 [Extension Host] Python Extension: Cached data exists getEnvironmentVariables, c:\Programas\servicosmsf_v2
console.ts:134 [Extension Host] Python Extension: Cached data exists getEnvironmentVariables, extension-output-#5

Activity

  1. ghost added
    triage-neededNeeds assignment to the proper sub-team
    on Feb 27, 2019
  2. ghost removed
    triage-neededNeeds assignment to the proper sub-team
    on Feb 27, 2019
  3. damonallison commented on Apr 12, 2019

    @damonallison

    +1 - I ran into this as well.

    From the Test Side Bar, running tests from the .py file will only run the first test (which I assume the "Python: Run Current Unit Test File" does.

    Screen Shot 2019-04-12 at 5 45 32 AM

    Running tests at the class level will execute all tests in the class.

    Screen Shot 2019-04-12 at 5 53 35 AM

    Hope this helps.

  4. DonJayamanne commented on Apr 17, 2019

    @DonJayamanne

    Damon Allison (@damonallison)

    Please could you provide some sample code we can use to repro the issues at our end?
    Thanks

  5. damonallison commented on Apr 19, 2019

    @damonallison

    Don Jayamanne (@DonJayamanne)

    You bet - run the tests in this repo. https://github.com/damonallison/python-examples

    The screenshots I posted were from this repo, so they should look familiar. Let me know if you're not able to repro it. Thanks!

  6. DonJayamanne commented on Apr 22, 2019

    @DonJayamanne

    Awesome, I can replicate this at my end, thanks.

  7. kondratyev-nv commented on Oct 5, 2019

    @kondratyev-nv

    I've run at this issue as well. I've created a file test_add.py with the following tests

    import unittest
    
    
    class AddTests(unittest.TestCase):
        def test_two_plus_one_is_three(self):
            self.assertEqual(3, 2 + 1)
    
        def test_two_plus_two_is_five(self):
            self.assertEqual(5, 2 + 2)
    
        def test_two_plus_zero_is_two(self):
            self.assertEqual(2, 2 + 0)
    

    And in the logs I can see that command line specifies the test to run.

    > C:\Python27\python.exe c:\Users\<###>\.vscode\extensions\ms-python.python-2019.9.34911\pythonFiles\visualstudio_py_testlauncher.py --us=. --up=*test*.py --uvInt=2 --result-port=53405 -ttest_add.AddTests.test_two_plus_one_is_three --testFile=<###>\sample\test_add.py
    cwd: <###>\sample
    > C:\Python27\python.exe c:\Users\<###>\.vscode\extensions\ms-python.python-2019.9.34911\pythonFiles\visualstudio_py_testlauncher.py --us=. --up=*test*.py --uvInt=2 --result-port=53405 -ttest_add.AddTests.test_two_plus_one_is_three --testFile=<###>\sample\test_add.py
    cwd: <###>\sample
    

    By the log it looks like the file node has an incorrect nameToRun value, so I've modified TestsParser for unittest. Please see PR #7783.

  8. 4 remaining items

  9. ericsnowcurrently commented on Oct 21, 2019

    @ericsnowcurrently

    N Kondratyev (@kondratyev-nv), FYI I plan on taking a look at your PR in the next few days.

  10. kondratyev-nv commented on Oct 22, 2019

    @kondratyev-nv

    Thank you! I look forward to it.

  11. karrtikr commented on Nov 7, 2019

    @karrtikr

    Validated, thanks again N Kondratyev (@kondratyev-nv)

  12. ghost removed on Nov 7, 2019
  13. ericsnowcurrently commented on Nov 8, 2019

    @ericsnowcurrently

    Luciana Abud (@luabud), happy now? 😁️

  14. locked as resolved and limited conversation to collaborators on Nov 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

area-testingbugIssue identified by VS Code Team member as probable bug

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions