Author Archives: jonathanpaizblog

Reflection on Week 1

Our objectives this week was to learn how slack works, and to learn about openMRS and AMPATH. The OpenMRS community is a worldwide network of volunteers with a wide variety of backgrounds. Its goal is to build the worlds largest and most flexible tech platform to support the delivery of health care in places all around the world. I did a quick demo of the software and at first glance i had no idea what was going on, but after playing around with it for a bit i not have a basic understanding about how it works. Slack is a useful tool that we will use in communicating with our team. I played around with it and found out it has a lot in common with the “discord” application. The only thing it lacks is a voice speak option. AMPATH was created in response to the challenge of treating thosands of people that are HIV positive. AMPATH is expanding from an HIV focus to adress the critial need for primary healthcare in places across the world. 

I also started looking into Angular 2 and found out that it uses JavaScript and html which i have a basic understandings of.

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

The Clean Coder Chapters 1 and 2

This week our reading assignment was chapters 1, and 2 in The clean Coder. Just off these two chapters i have learned a lot about what it means to be a professional. I learned that there is a right time to say no, and that being straight up with your employers is better for both parties. Something that really stood out to me was when the manager and the engineer were having a conversation and the engineer went on a rant about “trying” to get something done and what that implies. Saying that you will try to get something done implies that you were not giving 100 percent effort. You can try all you want to do something, you can try to fly, you can try to turn lead into gold, but some things are just plain impossible. It is best to communicate these things to your manager when the proper situation arises.

 

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Introduction

My name is Jonathan Paiz and i am a Computer Science Major at Worcester State University.

In this blog, i will be posting my findings on OpenMRS and AMPATH, and infromation on what i have read for that week

 

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Mutation Testing (Week 12)

Mutation Testing is a fault based testing technique that variants of a program are changed to determine the effectiveness of the test to identify problems. Some ways this can be done are by changing operators, for instance if you have a function that says “gpa<4.0” a mutation test would be if you changed it to “gpa>4.0” to see if the test case caught the fault. You could do statement removal, where you completely remove a statement to see if the test cases catch the defect, or you can insert the wrong syntax. All of these examples are valid forms of mutation testing.

 

Article i used: http://www.softwaretestinghelp.com/what-is-mutation-testing/

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Unit Testing, Integration Testing, and Functional Testing (Week 11)

 

To conduct a thorough test of software, unit testing, integration testing, and functional testing are all important because they employ unique processes to test the software the at the others don’t use.  To understand these types of testing lets look at a real world example of a battery and a phone sim card. 

Unit testing would be when the battery is checked to see if it has life, and capacity, and the sim card would be checked for activation. 

Integration Testing would be when the battery and sim card are assembles in order to start the phone

Functional Testing would be when the functionality of the phone is checked in terms of features and battery usage as well as the sim card. 

If only one of these procedures were conducted in testing, the test would not be complete. All of these need to be done to ensure that the product is working up to standards. 

Article i used : http://www.softwaretestinghelp.com/the-difference-between-unit-integration-and-functional-testing/

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Unit testing (Week 10)

 

Unit testing is a testing method in which individual pieces of code, sets of one or more computer programs work together with control data, usage procedures and operating procedures, which are all tested to make sure they are fit for use. 

So why would unit testing be good? Firstly, unit testing increases the confidence in changing code, if good unit tests are written and work every time the code is run, it will be easy to find any defects introduced by the new code. Finding a defect would be easy, when a test fails, only the latest changes need to be debugged. When you are testing at higher levels, you may have to test for weeks of work, rather than the next working version, which could have been done in a day. 

 

Article i Used : http://softwaretestingfundamentals.com/unit-testing/

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Manual Testing(Week 9)

Manual testing is the process of manually testing software for defects. It requires the tester to assume the role of the user and use the features that the software provides to ensure there are no errors.

The goal for this kind of testing is to make sure that the application or software at test is defect free and working tol the standards it needs to be working to. This kind of testing should be essential before the release of an application or software. If it is not thoroughly tested, from front to end, and defects pop up, time will have to be allocated to that defect. It is better to handle them before release, this way the developers have the code fresh in their minds, and may be able to detect where the problem is coming from.

 

Article i Used: http://www.softwaretestingclass.com/what-is-manual-testing/

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Functional Testing(Week 8)

Functional Testing is a testing prerequisite for seeing how precisely the system functions. Each part of a system must be examined to make sure they are working separately and alongside each other. It is essential to guarantee the quality of the software. 

Some Types of functional testing are Unit testing, which is to make sure each part of the code is able to deliver the desired output, black box testing which is when you do not know how the code works but are testing  crucial functions, regressing testing which is used to ensure the new code has not introduced any new bugs, system integration testing which determines the operability and compatibility of the software with other applications, and user acceptance testing which factors in the user experience and how well they interact with the system. 

There are lots of functional testing tools out there that you can use. Selenium, cucumber and HP QTP are examples of tools you can use. Regressing testing is absolutely necessary to ensure your software is working how it is supposed to be working. 

Article I used : 

http://www.cigniti.com/blog/functional-testing-need-know-right-now/

 

Other Articles i looked at: 

http://www.softwaretestingtricks.com/2012/04/top-5-common-myths-in-software-testing.html

http://www.cigniti.com/blog/5-reasons-agile-testing-software-development-go-hand-hand/

http://www.cigniti.com/blog/3-challenges-of-implementing-devops-testing-how-to-deal-with-them/

http://www.cigniti.com/blog/what-is-the-role-of-qa-in-the-world-of-devops/

 

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

How to Overcome 5 Software Testing Traps (Week 7)

If you have gone down the software testing path, and have been doing it for some time , chances are you have run into several different problems.

One of the problems you may have run into is running out of test ideas. One of the easiest ways to overcome this problem is by working with someone else. Working with someone else allows you to bounce ideas off each other, and expand on each other’s ideas. So this may help reduce the risk of you running out of test ideas.

Another problem you may run into is missing the testing goal. If you have a set of goals that you have to meet up to, and there is something holding you back from achieving this, whether it be not understanding completely, or not well defined goals, this may happen to you. To overcome this, you need to ask relevant questions to make sure you know exactly what is expected from you.

Another problem is if you are suffering from an in- attentional blindness. Basically if you miss something that is very simple. To fix this you should change the focal length of your testing approach. Keep and eye open for anything else that might be going on during test execution. Explore other areas that are not mentioned in your test case.

Have you ever come across an error or bug that you didn’t report as an error or a bug because you were not sure if they were an actual bug? This can be fixed by trusting your testers instinct. Follow your instinct, if you think its a bug, it probably deserves your attention and very well may be a bug. It is a much better approach then you ignoring it and pretending it is not a bug.

What to test and what can be skipped? It may be overwhelming by the number of possibilities and choices to approach testing. As time goes on testing goes on, tests get more and more complex.

Chances are you will run into these problems at some time in your career. Now that you have a solid understanding of what they are and how to overcome them, you should be able to deal with them efficiently 

Article I used:

http://www.softwaretestingtricks.com/2014/08/top-5-software-testing-mistakes-solutions.html

Other Articles i looked at:

http://www.softwaretestingtricks.com/2013/08/Importance-of-Cost-effective-Software-Testing.html

http://www.softwaretestingtricks.com/2013/05/best-cloud-based-test-management-tool-qtest.html

http://www.softwaretestingtricks.com/2013/03/agileload-enterprise-load-stress-performance-testing-tool.html

http://www.softwaretestingtricks.com/2013/02/best-load-stress-performance-testing-tool-WAPT.html

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.

Exploratory Testing(Week 6)

What is exploratory testing? Exploratory testing is a type of black box testing where you do not need to worry about the internal coding of the software. It is all about simultaneously learning. This kind of testing means the tester has the freedom to do whatever they want. It all depends on the tester’s creativity. In exploratory testing you do not write test cases in advance, first you learn about the software then you write test cases for it. 

So let’s go through some of the advantages and disadvantages of exploratory testing. Some of the good things about it is that it takes less preparation, it helps to find major bugs early because testers main focus is on error causing functionality. Can be done quickly and time efficiently. A bad thing about using this kind of testing is sometimes learning the application or software can be difficult. Also you do not really know when to stop the testing because this kind of testing has definite test cases to execute. Lastly, this kind of testing is only possible when you have skilled and domain specified testing teams. 

Exploratory Testing: http://www.software-testing-tutorials-automation.com/2016/10/exploratory-testing.html#more

 

Other articles i looked at:

http://www.software-testing-tutorials-automation.com/2016/10/adhoc-testing.html

http://www.software-testing-tutorials-automation.com/2016/10/globalization-testing-and-localization.html

http://www.software-testing-tutorials-automation.com/2016/10/state-transition-testing.html

http://www.software-testing-tutorials-automation.com/2016/09/what-is-decision-table.html

From the blog CS@Worcester – Site Title by jonathanpaizblog and used with permission of the author. All other rights reserved by the author.