Writing Test cases in Agile
I was going through a lot of articles and blogs but still i am unable to understand that if we really need test cases in scrum? Acceptance criteria is treated as test cases but those are not actually test cases in my opinion. What is the best practice we can follow or can we use test cases along with acceptance criteria in order make QA process more efficient.
How about using test driven development, with automated regression testing, as a means to improve efficiency?
Thats more relevant to writing good code. In some scenarios the testers are not technical enough. So the testers will have to write descriptive statements like test cases or acceptance test. What will we do in that case?
I worked on a program a few years ago that began to transition away from writing manual test cases by traditional QA testers and to writing automated UI tests in code instead. It was a gradual process and they're still fully transitioning to that approach. And you're right, the traditional QA tester was not technical enough to write coded UI tests. So the QA test team was retrained to learn basic coding skills. The developers setup the framework for the automated UI tests and supported the testers to use that framework. If you setup a good framework that uses the page object design, then you'll find that writing the UI tests in code is actually very similar to writing it in English.
Testing should demonstrate that the increment meets requirements and is fit for release. The process of testing should not be aligned to skill silos such as "writing good code" or to sub-roles such as "testers". Rather, there may be a range of testing techniques which might be brought to bear, such as unit testing and BDD testing. Development Team members would be jointly accountable for implementing these tests, including any regression testing of work invested in prior increments.
Quality is multi-dimensional and may not be limited to any particular type of test cases. Scrum does not have any preference or bias towards any particular technique or practice. Team can decide what is useful and works for them and revisit it during Sprint Retrospective to improve (product) Quality. Accountability lies is with with the whole Development Team and not just the member with specialist testing skills.