39 votes

Is it a good idea to write all possible test cases after transforming the team to TDD to achieve a full coverage?

There was no test-driven development process during the development due to very tight deadlines This statement is very concerning. Not because it means you developed without TDD or because you aren't ...
candied_orange's user avatar
24 votes

Is it a good idea to write all possible test cases after transforming the team to TDD to achieve a full coverage?

Is it still okay or good idea to stop most of the development and start writing whole possible test cases from the beginning [...] ? Given legacy1 code, write unit tests in these situations: when ...
Nick Alexeev's user avatar
  • 2,512
14 votes
Accepted

Acceptance Criteria for Edge Cases

I think the answer is you both should be thinking about your own set of edge cases. He as the dev should handle edge cases that are data specific such as does the app crash from any given user input, ...
Max Sorin's user avatar
  • 327
12 votes

Is it a good idea to write all possible test cases after transforming the team to TDD to achieve a full coverage?

In my experience, tests do not need total coverage to be helpful. Instead, you start reaping different kinds of benefits as coverage increases: more than 30% coverage (aka a couple of integration ...
amon's user avatar
  • 134k
12 votes
Accepted

Should you define acceptance tests for vital yet simple behavior?

Yes, test the vital but simple behavior. At least for 3 reasons: The whole idea behind BDD is to promote collaboration between business and technical people, to achieve a common understanding, and ...
Christophe's user avatar
  • 76.6k
11 votes

Acceptance Criteria for Edge Cases

The team needs to work together as opposed to having a "Not my job, not my responsibility" type of attitude/mantra. Acceptance criteria comes in the form of: Business Acceptance Quality Assurance ...
Jon Raynor's user avatar
  • 11.4k
11 votes

Strategy for dealing with A/B tests and Gitflow

The way I've always seen it done is to have a single code base capable of serving both pages/views/forms. ie. Its Feature flagged and deployed with two or more configs, or the 'does the user get A or ...
Ewan's user avatar
  • 74.6k
11 votes

Is software testing different when we are dealing with game development?

Modern games are actually a ton of creative art content developed using an in-house or proprietary game engine. The engine itself is unit testable for most part (rendering, geometry, physics, AI ...
S.D.'s user avatar
  • 1,080
9 votes
Accepted

Do tests that asserts a user can't do an action have any value?

Yes. It tests that the roles are taken into account when checking for permission. It also tests that the permission for the role are setup correctly. Note that these are unit-testing the permission ...
ratchet freak's user avatar
8 votes

In a testing phase,can I raise a defect which has occured due to deployment issues?

On the one hand, the developers want bugs that are in the code that need to be fixed. On the other hand, how is QA supposed to know whether it's code, data, scripts, or human error? QA knows that it ...
Kevin Fee's user avatar
  • 2,837
8 votes

Should you define acceptance tests for vital yet simple behavior?

One reason I don't use BDD on the regular is that the devil is in the details, and BDD hides detail rather than exposing it. For example, your last line is Then its new position should be the sum of ...
l0b0's user avatar
  • 11.4k
7 votes

Should a large number of system tests be part of the build?

The tests and the build The concept of having extensive tests as part of the build is not flawed. This is actually what the build is for. What is flawed is to have tests “that fail frequently but ...
Arseni Mourzenko's user avatar
5 votes

Acceptance Criteria for Edge Cases

Writing software that behaves in a robust manner in the face of incorrect or ambiguous input is an essential part of a software developer's job. If your developers don't see it that way, include ...
Robert Harvey's user avatar
5 votes

Is creating a completely duplicate system for quality assurance (QA) of another a bad practice?

O_A is wrong, O_B is right Fix A O_A is right, O_B is wrong Fix B O_A is right, O_B is right Hopefully, they also agree. O_A is wrong, O_B is wrong Hopefully, they ...
candied_orange's user avatar
5 votes
Accepted

One suite of tests for different implementations of a protocol

Language independet tests are entirely possible, but the problem is that you need to define a language-agnostic format for these test cases, and write parsers/test drivers for this format in each ...
amon's user avatar
  • 134k
5 votes
Accepted

Test Internals with TDD?

Also doesn't this contradict the major push for tons of unit tests and that in general the more unit tests the better because they help us identify the specific problem when they fail rather than ...
Ant P's user avatar
  • 813
5 votes

Is it a good idea to write all possible test cases after transforming the team to TDD to achieve a full coverage?

Don't write tests for existing code. It's not worth it. What you made is already somewhat tested in a completely informal way -- you tried it out by hand constantly, people did some nonautomated ...
RemcoGerlich's user avatar
  • 3,310
4 votes

Shared development and CI database

We have a set of SQL scripts that we use to create and modify the DB between versions - as its text, its stored in the VCS and tagged along with all the other code. One of the scripts is a "set up ...
gbjbaanb's user avatar
  • 48.6k
4 votes
Accepted

Side-by-side Functional and Acceptance Testing (SpecFlow)

I don't know if I agree with your premise. And I think you are kind of conflating a bunch of ideas and terms. functional testing is any testing that tests the functions of your system. this may be ...
Fran's user avatar
  • 859
4 votes

Acceptance Criteria for Edge Cases

What has happened here is that you've discovered value. The input value was not thought of when the story (and acceptance criteria) was written or when the code was written. If it's not part of the ...
RubberDuck's user avatar
  • 8,951
4 votes

How to test a web app (inc write paths) for acceptance or integration tests, without db access?

There are several questions here so I will try and answer the initial one of "For example the test that deletes a resource will fail if run the second time. " Ideally a good practice is for testing ...
Michael Durrant's user avatar
4 votes

How to prepare test case for System Migration of legacy system while existing functionality is unclear?

In order to answer your last question ("how should I prepare test case in order to ensure the quality of the system?") you must answer your first two questions: There are some differences in ...
Greg Burghardt's user avatar
4 votes
Accepted

Does the "Pyramid of tests" contradict the idea of tests focusing on behaviour?

I think things start to make sense once you concede that "unit test" should not test a unit of code (like class or a function) but unit of behavior. Imagine your application has simple ...
Euphoric's user avatar
  • 37.3k
4 votes

Should you define acceptance tests for vital yet simple behavior?

You might have chosen a bad example. It should be new pos = old pos + (vel * delta time) You would expect this calc to apply to everything in the engine, not just the boids. "when it moves" ...
Ewan's user avatar
  • 74.6k
3 votes

Is creating a completely duplicate system for quality assurance (QA) of another a bad practice?

When you have a system in production that is actually used by customers, having a QA system to verify bugfixes and new functionality is an absolute must. From the quality standpoint, it should be as ...
Vladimir Stokic's user avatar
3 votes

Acceptance Criteria for Edge Cases

Some observations: ...when I reject his stories I don't know your work culture or process, but to me rejecting a story is a severe step. If I were the dev, I would also generate push back on that ...
Kasey Speakman's user avatar
3 votes

How do you properly test a complete software replacement

I am assuming that the test suite for System A has good test coverage. This is maybe a good assumption. But you know what they say about assumptions... A more fundamental question to ask is: what ...
enderland's user avatar
  • 12.1k
3 votes
Accepted

Acceptance test execution strategies for heavy first-time-setup apps

This is not by any means a bad practice. It may seem like an overkill but doing integration/system type of testing such a way gives you tremendous benefits. Tests become a lot less fragile when you ...
c_maker's user avatar
  • 8,280
3 votes
Accepted

Is it a good idea to have separate test methods for every step?

Best practices always have a purpose, a reason behind them. It's always a good idea to consider these reasons in your design - especially when you are trying to decide how and how hard to follow these ...
Idan Arye's user avatar
  • 12.1k
3 votes

Is it a good idea to have separate test methods for every step?

If you can safely assume that making a server request with the same parameters will behave always the same, method B is almost pointless - why should you call four times the same method to get the ...
Doc Brown's user avatar
  • 206k

Only top scored, non community-wiki answers of a minimum length are eligible