Comments (5)
@jensk-dev We don't currently have a way to make that distinction in the html report because conceptually the difference doesn't exist in stryker terminology. We first need to revisit and agree on definitions before we can extend them and come up with a solution. Are you joining hacktoberfest? We should take some time to discuss this topic tomorrow. @richardwerkman
from stryker-net.
Ignored The mutant wasn't tested because it is ignored. Either by user action, or for another reason. This will not count against your mutation score but will show up in reports.
https://stryker-mutator.io/docs/mutation-testing-elements/mutant-states-and-metrics/
I don't agree with either of your claims.
First of all our docs do not specify that it should be user action only so we are not in violation of our shared understanding. Secondly the inclusion or ignore status of these mutants is directly controllable by the user because the filter sets the ignored state for block mutants when that block contains other active mutants. If you ignore those mutants, the block mutant will be set to active. This is user action.
Thirdly if we don't show the existence of this mutant at all users will be confused when it suddenly shows up once the ignore other mutants. That doesn't seem valid to me either.
Lastly we also show compile and runtime error mutants, we might as well not show those either if we want to start hiding valid mutants from users.
from stryker-net.
I just got 6 participants in training who all asked what "Ignored" means, why it is there, and why the top bar isn't green while on 100%. Note that this happens with the default Stryker config (so 'no config').
Showing the mutants in this way isn't helpful.
from stryker-net.
I just got 6 participants in training who all asked what "Ignored" means, why it is there, and why the top bar isn't green while on 100%. Note that this happens with the default Stryker config (so 'no config').
Showing the mutants in this way isn't helpful.
New users will have questions, we should provide the answers. That doesn't make what we're doing incorrect. It could be, but it doesn't have to be. We could for example extend the docs with examples for the Ignored status. Could also be that we need a new status/way to show 'potential' mutants. We can discuss this some time.
You say it's not useful, I disagree. For example: It provides a user with the information (provided that we tell them in a way they understand) that if they decide to manually ignore all mutants in a block they will still have a basic coverage through the block mutator. I consider that useful.
from stryker-net.
A compromise for topbar clarity could be a tooltip or parenthesised number of mutants that were user ignored relative to the overall number of mutants ignored. This would preserve @rouke-broersma's concerns, while simultaneously giving some insight into what is happening. Just an idea, if anyone has a better proposal I'm all ears
from stryker-net.
Related Issues (20)
- Can't extract original expression from HOT 14
- Rework mutation orchestrator for Null-conditional operators mutator HOT 11
- Stryker fails with .NET 8 RC2 SDK HOT 16
- Mutually exclusive validation incorrectly triggered when using baseline flag
- In solution mode, the since filter does not correctly detect test projects
- Stryker does not enrich test project with test info for C# .NET Framework unit tests HOT 1
- The SinceMutantFilter does not mark the unit test as changed if for any reason the TestFilePath is empty
- Linq mutator mutates Count to Sum HOT 1
- Linq mutator for query syntax
- Mutator not honouring `NoWarn` HOT 5
- Unhandled exception. System.MissingMethodException HOT 4
- Compile error: Use of unassigned local variable HOT 2
- Unhandled exception. System.InvalidOperationException, when using more than 1 test project. HOT 3
- MSBuild not found in .NET 8 Docker Container HOT 2
- Warnings after upgradin to .NET 8.0 HOT 2
- Exclude folder path from mutation in stryker-config HOT 14
- 'Unhandled exception. System.MissingMethodException' on .NET7 project with preview language HOT 3
- Mutate expression bodied methods to empty body HOT 5
- dotnet8: process failed to connect to vstest.console (linux ssl issue) HOT 19
- Unexpected Stryker Warnings Occuring with Nullable DateTime
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 stryker-net.