Skip to main content

Posts

Proper QA estimation in Agile project

  Today, I want to chat about a common issue in Agile development – story point estimation. You see, it's easy to get caught up in estimating how long a feature will take to develop and forget about the crucial Quality Assurance (QA) effort.  It happens to often: your team is in the middle of sprint planning. New user stories are being discussed, and estimations are given, but there's a catch. You've estimated the development time perfectly, but you've barely even glanced at how much effort QA will take. Why? Agile talks about Development Team and you mistakenly thought that it is all about DEVELOPMENT. Sound familiar? Trust me; it's a more common scenario than you might think. So, what's the big deal? Well, when you leave QA effort out of the equation, several not-so-great things can happen: Vilocity can suffer: You might think you can squeeze more into a sprint than is humanly possible, setting your team up for disappointment and overcommitment. Quality can de
Recent posts

What is the velocity of an Agile scrum methodology?

Let's discuss some of the important measurements in Agile, and that is the Velocity of the Scrum team work. Based on Wikipedia definition Velocity is " ...the rate of change of its position with respect to a frame of reference and is a function of time...", which when transferred to the scrum world can be summarized as: The amount of work that the scrum team completed in a single measure of time - in a sprint. How we Calculate Velocity? Velocity is actually a very simple to calculate, it is done but totaling the number of story points of fully completed user stories from the sprint backlog. So if a current sprint included 4 user stories: 2 with 8 story points each, one with 3 story points and one with 32 story points. and by the end of the sprint the 32 one was not fully done the velocity calculation will be: 8+8+3=19 Note: the 32 story points are not part of the velocity calculation as this user story was not completed. What Velocity is used for? The v

Performance testing vs Load testing vs Stress testing

Today I want to discuss a popular topic regarding a difference between Load and Performance testing. Those two types of testing are commonly used together but there are several key differences between the two. To get a better understanding of the topic lets have a real life example from one of my clients and use it to explain the difference. I have worked for a client that was building an in-house web application that provides its customers with an option to select and order different products and services. The request was, before the up-coming release, to test the performance of their product. We started the task by trying and understand what they expect from performance point of view and then went through an exercise of defining what is captured by what test. The client said that they are looking to have about 900-1300 active users on the site at a given moment, and the expected response time (for a page to load) should be less than 5 seconds. With those details what are the t

What is ETL system testing?

This week let’s talk about what is ETL System testing, and what exactly do we test when we perform this type of test? But as usual let’s start from the very beginning and understand what ETL type of system is. What Is ETL System? ETL – Extract Transfer Load. This type of a system has a special structure that is usually used in case when we want to either load or extract data in big amounts that cannot be contained in a regular API. In other words we are talking about a components that their main purpose is to move around big amounts of data and manipulate it along the way based on specific logic. ETL system implementations are different; involving different data sources on different platforms; each of those systems can be broken down to a set of interfaces that work together to move the data, but despite the differences we can commonly group them based on the direction the data flows at from data source perspective into two groups:          Inbound interfaces    

What is API testing?

Today let’s talk about what is API testing, and what exactly do we test when we perform API testing? To start from the very beginning lets understand what API is.   What Is API? API – Application Programming Interface. This is a functional piece of a system that sits usually between a data source and a front end presentation to the user. In other words if we take a simple example of a web application the nice looking web site will be using API calls to retrieve data from the back-end database. It is important to understand that API can mean different things in different systems, for example for web application an API can be a SOAP or a REST web service, but for a desktop application API can be a set of known functions that allow retrieve or modify data within that application.   What Do We Test With API? When we talk about API testing we talk about testing some specific functionality that is described in the requirements for that API, and our verification points m

How to find out any wifi password?

Today I wanted to discuss a very useful tip to get a Wifi Password of a network that your machine used in the past. For software testers this knowledge is particular useful when dealing with lab equipment that was pre-set and required additional changes and modifications. Imagen a scenario when you as a quality assurance analyst in the company have received a lab laptop that you need to install some software on it, and because of the type of the software you expect that pre-set wifi password for your network might be lost. Your first order of business will be to find out and back-up existing passwords, but how to do it? Here is a quick and easy way: The only thing you need for that tip to work is Admin level access to the machine you are working on. We begin by opening a Command Prompt with admin rights Then we write the following command: netsh wlan show profile A list of existing wifi networks profiles will be shown, pick a name of the network you want

3 free tools for software test management

Today I want to take a look on the 3 freely available tools that allow for test management without breaking the bank those are good starting point for those who are looking for an alternative for high end tools like HP ALM and Smart Bear Test Complete. Kiwi TCMS This is a test case management tool that allow for proper test case creation and execution with nice reporting functionality. This tool does not contain internal bug tracking but integrates nicely with big players like BugZilla  (A free Bug tracking tool) TestLink This is a full free solution for Software test management. It has it all from Requirement management to test case creation trough reporting and up to bug tracking. Everything can be done in this tool that has a lot of documentation online and a stable version the only downside is that its look and feel very outdated and might concern some modern testers out there XStudio This one is a commercial product that has a free, community, edition. It has a full spect

Difference between UI and UX in software testing

I lately noticed that there is some confusion going on around the software testing in regards to user facing parts of the system. Testers mention that they are planning to “run some UI testing” or others speak about “strange UX on that system”. I would like to spent some time today and emphasizing the main 3 differences between UI and UX and how we are testing each one, and by whom. But let’s start from the beginning what is UI and what is UX? UI is a User Interface, usually referring to anything that can be visually seen by the user when interacting with the system. That will include colors, page design, logos, element shapes, etc. UX is a User eXperience, usually referring to anything that can be done by the user when interacting with the system. That will include what can be clicked, what can be done, what will be returned back to user and in what way, etc. With that understanding we can now define the 3 most important identification points for each one UI - User inte

7 Most Popular Test Types in Software Testing

Today we are going to return back to basics of software testing and discuss the 7 most popular test types that are being used in every software testing effort. Those different test types cover all the levels of the software to make sure that the final result matching the expectations from every possible angle. Here is our list: Unit testing Smoke testing Regression testing Functional testing Integration testing User Acceptance Testing Performance Testing Now let’s have a deeper dive into each one of those by using a simple example of an imaginary system that was created in order to manage warehouse activity including shipments, inventory and goods receptions from suppliers. Unit Testing This type of testing is usually performed by the developers and is covering the very basic development component. In this test developers are testing the straight forward functionality of a functional piece of code to make sure that it is performing according to th

Story Points estimation for Scrum with Fibonacci vs Shirt Sizes vs Linear - 7 minute guide

It is all began long time ago when Development Teams were constantly asked to provide estimate and they were having a hard time to properly face the task. Let's admit it, there are so many things that can change, happen, and simply go wrong during the development process that one can hardly expect a proper estimation of hours for each task. That why a relative estimation with Story Points came along. Story Points Estimation Its a different way to estimate the effort of the Scrum Development Team with-in Agile methodology, which means that instead of estimating hours of work the team estimates each effort relatively to other efforts in the project. Let's assume that a developer knows that specific 'Task 1' is much harder than another 'Task 2' it is hard for him/her to quantify that harder feeling in hours of additional work but it is possible to say that it much more work. This situation is being address by Story Points when each story point is

How to choose what tests to automate

Today I wanted to discuss the basic automation question - what exactly do we want to automate? We can of course be extreme and say "everything" or "nothing" but both of those options are a very costly choices, first takes a lot of resources the other get you pay for it at the end. I was consulting a client once where they had a complex process of ROI calculation that resulted in them not automating anything as the process to choose what to automate was time consuming by itself and ironically enough was not part of the Return Of Investment formula. With this client we had to find and streamline the process to make a quick and easy decision regarding the automation candidates and I wanted to share this process with you. To better understand the process we will need to answer two simple questions - Why and What: Why we automate What we automate Why we automate? Imagine yourself in an epic competition Human against the Machine in a battle of ham

What is a Workflow in HP ALM - 7 minute guide

For those of you who start with HP ALM, or using it for basic functionality and looking to increase the capacity of the tool, I wanted to mention one of the most powerful features within HP ALM, and the one that sets it above the competitors - the ability to fully customize most of sections within the tool. This customization goes as far as giving the possibility to create new buttons with customizable functionality, updating functionality of existing functions and adding fields to different components. All that can be achieved through HP ALM’s workflow section. This sections allows configuration of day to day functionality like preventing defect from being closed without a reason, to a more complex customization with have VBScripting like exports, execution or even initiation of other tools and applications. In future posts I’m planning to explore some specific application of this powerful tool, meanwhile for those who interested here are some examples of what can be achieved

Email attachment issue with HP ALM

Lately, I was facing a strange issue when the defect notification coming from HP ALM were all missing the video attachment which were there to help with the bug reproduction process. It was the first project with this client that decided to include video attachment instead of a screenshots and it was obviously related to the size. Reviewing of HP documentation shows that there is a parameter in Site Administration tool that defines this limitation it's called: ATTACH_MAX_SIZE By default this parameter set-up to 3000kb which allows for 3Mb of email attachments, any attachment above this size will be excluded from the email. We did a quick check of our attachments and found out that we don't need more than 10Mb for our purpose and hence the Outlook server limit was set to 20Mb we were good to go with the change. Now if you looking to limit the attachment size or type to a specific module (e.g. Defects, Test Plan) you will need to use ALM workflow to achieve that.

What is a Scrum Development Team - 7 minute Guide

I have noticed in many places that are working on implementing Agile methodology a popular misconception around the question who are the Scrum Development Team. Most people wrongly assume that it is the de facto developers who write the code and when I point out that it is not the case it is being met by dismay and skepticism. "Developers are developers, who else can development team be?" I was told once in a such discussion, and the answers to that is hidden with in the Scrum guide If one will go and carefully review the guide one can find the following definition there: "The Development Team consists of professionals who do the work of delivering a potentially releasable Increment of "Done" product at the end of each Sprint." Take a note of the phrase "... rofessionals who do the work of delivering..." those are not only the developers who write the code but also the Testers who test the code, the BAs who taking care of Backlog items

How To Make WiFi Tethering in Windows 10 or Windows 7?

It happens, specially when you are doing some testing with mobile devices, that you need to connect to only internally available application. The issue is with devices that have only WiFi connection and cannot be directly connected to internal network (LAN). For those cases you can create a temporary HotSpot (a connection sharing) on your Windows machine that will allow you to connect your device through it to your internal network, to have the following set-up: Lets create the set-up: Click Windows logo at the bottom left hand corner, type cmd , right-click the Cmd.exe link and select “Run as Administrator”. If you don’t have this option you cannot proceed. Sorry. Talk to your System Admin and show them this article. But if you can the following black window will open up: Here Type the command below: netsh wlan set hostednetwork mode=allow ssid=MyNetwork key=MyPass You of-course welcome to replace “MyNetwork” with the name you’d like to use for your new wifi ne