Any human being
wants to improve the quality of life. The same way in the software development
process the most important role is that of the tester. The tester is the gate
keeper of quality in any piece of software. The life of software tester has its
evolution in the recent years. So I have given my pointers on the advancement
of process and quality in this article.
One of the major changes
in software industry in the recent years is the advancement of mobile
technology and it revolutionized the software industry by creation of smartphone
app for any major website. The key challenges in mobile app testing are
diversity of platforms and variety of mobile devices available in market which
makes it harder to automate as well. The main difference between mobile app and
website is that we need to give more importance to performance and memory as
well as UI. Also we need to test the functionality of the mobile phone like
incoming call, text message and information pop up when using the
application. Mobile testing is challenging
as we cannot test the application in every possible device used since it gets
expensive to buy all the devices. We can use emulators for testing on various
mobile phones and OS combinations without the need to purchase the real device. Test LAB is also created by bigger companies
with various devices and OS combinations. When the mobile app is released for a
world market the tester should also take in to account the network and
restrictions in various countries. The cloud computing helps a lot in this
since testers can deploy the software over the internet in different type of
servers.
Due to
virtualization of data and globalization of companies, there is a need to store
vast amount of data. A major retail corporation can have many departments’
sales, marketing, retail, customer, etc. The data is stored and managed in
different databases and in different table formats. The ETL (extract,
transform, and load) process takes data from various tables and formats
(oracle, SAP) and load it into the data warehouse. The ETL testing process also
involves test planning based on data mapping document, test data creation and
approval, execution of test cases till the exit criteria is met and test
completion report. The ETL test execution should test to avoid data loses,
verify data completeness, verify transformation rules, schema and referential
integrity testing, data quality checks on target warehouse to name a few.
The American IT
workforce has moved mostly from standard desktops to virtualized world. The mindset
of people is more accepting to changing from workstations and huge servers for
the company to hosting of services on cloud. This gives more flexibility for
users to access their work from any laptop or mobile devices in their home.
Anyone need to work on MS-Word need not own the software rather work on word
online. This makes the life of tester difficult by making him test the software
for more security issues and data leaks.
The mobile
technology and the tight deadline for various projects have led to more companies
adopting the agile methodology of software development. In the Agile process, instead of waiting for
software development to complete, testing is done in parallel. Testing is not
considered a step in software development process but rather a coexisting force
in creating functional software in existing time. Testers are included actively
in the software development team and they contribute to improvement in user
stories. They complete small iterations along with development team to create
test data and decide on test tools. The strategy of an agile project can be
Test Driven development (TDD) or Continuous integration (CI). The testing
approach is either test immediately after or parallel independent testing. When
the team follows a TDD approach, a test is written and enough software is
deployed to make the test pass. Then the same process is repeated again till
the whole application is developed. In parallel testing the code at end of day
is deployed in server and the testing is done for that user stories alone. The
whole project is approached with many iterations rather than single development
phase followed by testing.
In Conclusion,
testing process is becoming more proactive, risk based and tends to be short
and sweet like a small tech video in TED. The tester should be more able to
write more light weight test scenarios instead of detailed test cases, but with
a complete coverage of the functionality. Also the tester should have a vast
knowledge of the working of the cloud server and deployment of mobile
applications across different mobile devices.
No comments:
Post a Comment
Useful or Not leave a comment to let me know