Comments (3)
Sorry, just saw this... thanks for the great bug report!
From what I can see, your conclusions appear to be correct. Since you seem to be able to run GTA from source: Might it be an idea to add a "retry functionality" to the point where the DTE is received? I'm thinking about retrying for a couple of times (and e.g. once every second) in the hope that the DTE becomes available in time...
For what it's worth, a workaround might be to set the env variable as mentioned in the log output. This had been introduced because of a different (and now fixed) VS regression - the DTE is used to figure out the location of the solution settings file if I remember correctly, and by setting that variable you tell GTA where to find that file without reyling on the DTE object. I'm aware that this is not nice at all, but maybe better then having to live with the occasional problem.
from googletestadapter.
Thank you for your reply.
I've implemented the suggested retry mechanism (actually more like a brute-force while
loop), which solves this particular error (so does the fallback file specified via the environment variable btw.).
Unfortunately my overall goal was to get the test adapter running with 3rd party dependencies not present in the test targets $(OutDir)
via placeholders in the PathExtension
setting, as proposed in #170.
There seem to be several places where the information which platform and configuration is selected does not get updated or populated in the first place properly. Two cases could be identified:
- Switching between
Debug
andRelease
configuration (no update of the settings seems to get triggered),platformName
andconfigurationName
in the settings will keep the previously set value. - Starting up VS without opening a project and waiting several seconds (waiting for
GetVisualStudioConfiguration()
inGoogleTestExtensionOptionsPage
being called, which will not enter theif (dte.Solution.Projects.Count > 0)
branch and thus not populate theplatformName
andconfigurationName
fields).
As the PATH
variable does not get updated properly in these cases, loading the correct 3rd party dependencies fails and the test runners cannot be queried by the test adapter.
I gave up and will stick with the good ol' copy-all-the-dlls-to-the-output-directory method.
from googletestadapter.
Ok, thank for letting me know... I don't think that I have any influence on when platformName
etc. are updated by VS - I just take what I get from the VS platform :-)
Closing this now - feel free to reopen...
from googletestadapter.
Related Issues (20)
- Visual Studio Bug: Clicking on test result sometimes kills VS2019 HOT 25
- .
- Unexpected values passed in to --gtest_filter command line option when using GTA with VSTest.Console.exe HOT 3
- Visual Studio 2022 support HOT 17
- Test discovery fails when using vcpkg Autolink HOT 2
- Test discovery appears to run the whole test suite HOT 8
- Test discovery fails with collect code coverage enabled if global thread_local smart pointer is in the test code HOT 2
- Cancel test does not terminate process HOT 3
- Tests won´t show up in VS 2019 Test Explorer HOT 16
- Doesn't work in VS2022 HOT 1
- Output is hidden if test does not fail HOT 1
- Namespaces not detected in VS2019 HOT 1
- GTest report generation - Question HOT 2
- INSTANTIATE_TEST_SUITE_P function definition not found for VS2022 Windows 11 HOT 1
- Typed tests do not run HOT 1
- Sample of how to set parameters like --gtest_output=xml:testReport.xml in runsettings file
- [Problem:] When adding `GTA_Traits_1.8.0.h` to allow "Traits" usage to a Visual Studio 2022 (17.3) test project, then it can no longer be debugged in Test Explorer
- Unable to set SkipOriginCheck in Visual Studio
- Tests from anonymous namespaces cannot be executed
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from googletestadapter.