Week 9: “5 Excuses Every Software Tester Must Stop Giving”

This week I read a blog on excuses that testers must stop giving.  The first excuse they said that testers give was that they only have read-only permissions, and can only look at the logs.  Testers tend to blame why they can’t figure something out because they don’t have access to it, only the developers do.  The second excuse they give is that they “don’t deploy a build, some other team does it for us”.  The author, Mahesh C., basically was saying that testers need to learn how to do this type of stuff on their own.  If a tester can’t deploy a build because they don’t know how, and all of the developers are busy, the the solution is to learn how.  Testers can learn a lot form something as simple as creating a new build of the product, and seeing why and how it failed for themselves.  The third excuse that blog talked about was that testers say that they don’t debug an issue, they only log it.  However, the author is arguing the point that many of the times the logs will say it all.  A log can pinpoint the exact problem, and that’s exactly where a developer would also go to look.  The fourth excuse is when they say “I don’t know why it happened. Developer resolved it and I simply verified it”.  Mahesh said that as a tester it is your responsibility to ask the developer what he/she did to fix the issue.  It is not good being in a black box and being oblivious to how things work.  Finally, the fifth excuse that Mahesh talked about in the blog is that “I didn’t get the opportunity to work on anything else except for manual testing”.  He basically went on to say that testers need to find the time to do everything and work on time management.  Overall, I thought this was an okay blog.  However, was a bit aggressive, and I felt like it was saying that ALL testers say these things.  The author kind of made testers seem lazy and like they didn’t care which I don’t find to be true at all. He did apologize at the end for being “harsh” but that doesn’t make up for the fact that he was making harsh assumptions throughout the whole thing.

From the blog CS@Worcester – Alex's Comp Sci Blog by alexsblog13 and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Mutation Testing (WEEK 10)

The term mutation in software testing stand for modifying the test code and can check the existing test and detect or reject the change mutes. Mutation in Java is an additional class with a single modification compared to the original code, for example it can be the change of a logical operator  in a if section :

if( a && b ) {...} => if( a || b ) {...}

When detecting or rejecting a modification by the existing test in marked as killing a mutant. If we have a perfect test code no class mutant can survive. Testing with mutant testing can be very expensive so that is one reason why is better to write a perfect code. There are tools to create mutants and run all the tests against each of the mutants automatically. The mutation creation is based on mutation operators that are which can show typical programming errors.

This picture shows a report which list all the mutant killed by ruing the mutation testing.
Here are some of the benefits when we apply the mutation testing:

Can show all new errors to the developer
Can detect hidden defects in the structure of code
Can increase customer satisfaction index because the product can be less buggy.
Maintaining and debugging the product can be easier.


Mutation testing is very useful way to find errors and fix them and it can speedup the proses of finding bugs in the code.


Citation
http://www.codeaffine.com/2015/10/05/what-the-heck-is-mutation-testing/

From the blog Table of Code by Andon S and used with permission of the author. All other rights reserved by the author.

Week 8: “Women in Testing”

For my week 8 blog post I came across a title that read, “Women in Testing“.  This immediately caught my eye, because I am in fact a women in testing.  The majority of engineers are male, so to see something specifically talking about women was interesting to me.  Software Testing Magazine navigated it’s readers to the Women in Testing website.  The purpose of this website is to increase the visibility of women in the software testing field and help them network.  I really liked the whole idea of this site and thought it was a great way to give women testers the credit they deserve.  Women in the engineering field tend to be extremely overlooked.  This website shines the light on women and gives readers a good indication of what we are capable of.

From the blog CS@Worcester – Alex's Comp Sci Blog by alexsblog13 and used with permission of the author. All other rights reserved by the author.

First Software Technical Review

This week in our Software Testing class; we were assigned the task of software technical reviewing some code that was provided by our professor. It was quite exciting since that was the first legitimate testing in a group I have done in my programming career. The concept of software technical review so fairly simple and straight to the point so it was not difficult to dissect what it was that we needed to do in order to effectively review the given code. The outline of the assignment was to first individually review the code by ourselves without discussing our results with other team members. Afterwards, you would then meet up as a whole team and discuss about what each other found in terms of errors and faults within the code. The designated recorder of the group records any changes made during the meeting and compiles together a master list of all of the members’ combined discovery.

Although the testing process itself was new and exciting, there were a couple of complaints I had. The only factor that made the assignment frustrating is that some team members did not individually review the code before the meeting. Due to this, instead of delegating time to discuss our findings, we spent most of the class time waiting for some members to look over the code so we barely had any time to actually discuss as a whole group. Besides that however, it was a fun and memorable new experience in which I learned a lot!

From the blog CS@Worcester – Tan Trieu's Blog by tanminhtrieu and used with permission of the author. All other rights reserved by the author.

Bug Hunting

There is many ways to go about looking for bugs, defects present in the software,  obstructing the program from its desired performance.  The presence of the bug decreases the quality of the software. While we build test cases to catch these bugs, you need to make sure you are exploring beyond just what the rules are. Since it is impossible to be 100% bug free, a good tester would know to not always stick with the test strategy and blindly follow it, it might make you unintentionally blind to the real problems. Another thing to do is to keep monitoring the bug catching mechanism, with old tests even helping out. Unless you have prior knowledge of the software, you will not be good at testing it, or be able to gather requirements which is a must for test cases. So instead of waiting for requirements, you could test wrong and inappropriate things to see if the software is producing the right output or not. And even after you have thought that you might have fixed a bug successfully, don’t be happy just yet, note it down because it could become a problem in your code once again, just to come back to bother you again. And testing these bugs more deeply can even reveal more harmful bugs that you didn’t know about before. Most of all, always bug hunt with someone else so they can catch the flaws that you overlook in your own code.

From the blog CS@worcester – CS Blog by Gautam by csblogbyg and used with permission of the author. All other rights reserved by the author.