SOFTWARE TESTING at ACCENTIQA

QUALITY ASSURANCE


At Accentiqa, we specialize in providing Quality assurance services to ensure that Software development follows the most efficient and viable path to meet Industry Standards and IT goals and mission. We focus and follow preventive measures to help minimize defects by ensuring correct methodologies are followed in development. In any organization QA activities goes hand in hand with Software development process starting from creating and maintaining requirements, Test plan, Test data, Technical review, feedback etc. We work with you to independently assess the current state of testing from strategic and operational perspectives, and we set testing goals to transform your testing. We not only follow best QA practices, but we accelerate Quality within your Organization's SDLC by utilizing cutting technology and new learned techniques.

Among others, here is what we emphasize to achieve QA objectives and excellence
  • Provide independent testing environment that is not only objective, impartial and unbiased but closely emulated with production setup
  • To leverage on testing best practices available in the industry and domain
  • To reduce risk and support after project launch/release
  • To mitigate financial risks and ensure cost containment
We are improving the way testing is done allowing you to know exactly how the product will perform before release. Our team helps you to get you ready for next product launch by conducting through exploratory testing. Our testers are well equipped to perform many tests to uncover hidden defects.

Now with software development lifecycles crashing and constant pressure to release products faster, Testing has become all the more critical to ensure application/product release on time, within budget and with the agreed level of confidence. Our clients can realize transformational goals through the adoption of systematic and standardized processes to deliver higher quality. With our reusable templates, methods and accelerators refined over hundreds of real-world engagements, and frameworks to promote speed, reuse, ease of maintenance and rapid defect isolation, we ensure continuous improvement.

We aim to achieve higher quality through a combination of quick wins and incremental improvements all while targeting long-term strategic goals. Our expert QA governance team, consisting of members from development, quality assurance infrastructure and production support, are responsible for managing release sign off at desired levels, and gating of releases to the next environment. They also formalize the QA standards, templates and metrics.

QA Assessment :


Starting from requirement gathering analysis through to implementation and post deployment maintenance of your software solution, we provide QA Assurance services. Our QA Assurance services provide business stakeholders with information about the quality of the software or application being developed. Through our ITIL-based, industry proven methodologies, we provide development organizations with an objective, independent view of the software to allow the business to appreciate and understand the risks of software project or implementation. Our test techniques include, but are not limited to, the process of executing a program or application with the intent of finding errors or other defects. At a minimum our processes provide demonstrated proof of validating and verifying that a software program or application.

Our experts can help you implement a process-driven approach for planning, documenting and managing the entire testing process. In addition to ensuring your software conforms to the specified requirements, our approach reduces risk by preventing defects from being introduced and by detecting problems as soon as they occur. An additional goal of our process is to integrate QA into all software development lifecycle phases including security testing and performance testing.

We emphasize on a strategy of early and frequent testing with the objective of optimizing costs and significantly reducing a solutions time-to-market. This approach has yielded successful results as it ensures our clients will not have to bear high costs of fixing code defects at a later stage in the development cycle. We have a keen focus on constant evolution and improvement of business processes, technical expertise and experience, outsourcing QA to Creative Chaos is certain to deliver significant business value and cost benefits. Our team of SQA engineers is proficient and experienced in handling all quality assurance tasks starting from developing a comprehensive QA strategy, planning of resources, team building and end to end management-enabling you to concentrate on your core activities and prepare for expansion.

We ensure a complete quality standard by following these key steps:
  • Analyze QA processes, artifacts for improvement and refinement
  • Automation readiness and roadmap (both GUI and backend)
  • Testing Center of Excellence (CoE), roadmap and areas of improvement
  • Coverage metrics both high level and detailed ones
  • Defect life cycle analysis, restructure and management
  • Test data management and data engineering
  • Lead/TDD/Agile testing framework to achieve continuous integration

Our team of experts performs SQA audits to ensure that proper control procedures are being followed; that required documentation is maintained; and that the developer's status reports accurately reflect the status of the activity. PCG delivers an audit report to management consisting of findings and recommendations to bring the development into conformance with standards and/or procedures.
Product evaluation and process monitoring are the SQA activities that assure the software development and control processes described in the Project Management Plan are correctly carried out and that the project's procedures and standards are followed. Products are monitored for conformance to standards and processes are monitored for conformance to procedures. Audits are a key technique used to perform product evaluation and process monitoring. Review of the Project Management Plan should ensure that appropriate SQA approval points are built into these processes.

Testing Center of Excellence (CoE)


Software testing is an important part of Quality assurance. It is the process to evaluate software product to determine that they satisfy specified requirements, to demonstrate that they are fit for purpose and to detect defects. So Testing is activity in which software is executed and tested for presence of failures.

Our Testing Center of Excellence meets growing need of maintaining high quality standards. Growing need s of IT industry means shorter development lifecycles, changing requirements, limited resources thereby reducing quality standards. T CoE separates testing from development process to achieve excellent production standards. Our independent dedicated team excels in using best testing practices in place. Testing early and testing often will significantly reduce defects found during the delivery and ultimately reduce production defects.

Testing CoE emphasizes on following goals to meet your needs:
  • Early feedback-: Using efficient resources and quality automation tools we ensure bugs are detected at the earliest so that it doesn’t hamper development process. Starting early testing means better delivery of testing needs and smoother development process.
  • Creative testing -: Experienced team gives more comprehensive test plan that might be out of sight at development stage. We supplement negative test cases and add new ideas in a creative way.
  • Risk based (priority based) testing -: Testing key functionalities earlier so that development process in not hampered.
  • Beta Testing -: While testing in test environment development team misses critical defects that occur in production environment. We specialize in beta testing with scalable expert resources. We engage qualified testers that meet globally spread testing services.
  • Repeatable results -: Using expert testers and powerful automation tools we give accurate and repeatable results in lesser time.

Your organization might have its own testing practices. We bring standardization to testing process utilizing industry standards. Our team of testers has rich experience and use suitable tools to provide satisfactory results. We use standard method to work on multiple projects and give optimum results. This makes core team of your organization to concentrate on development and forget about testing. We utilize effective and efficient method for optimizing, prioritizing and analyzing entire testing effort and execution of test cases at all stages.

We provide Multi-disciplinary solution encompassing people, processes, methods and tools to maximize quality gains, reduce total lifecycle and operational costs and improve speed to market. We utilize an effective metrics model to gauge the testing process’ health and take improvement actions on a continuous basis.

Automated solutions for Testing and QA


Test automation being fast and accurate has obvious advantage over manual testing. Manual testing is slow and repetitive testing is prone to human error. We provide automated testing solution that gives fast results and can be repeated as many times.
Our extensive experience in test automation covers functional testing, database testing, regression testing, API testing, GUI testing and sanity testing. We have deployed various automation frameworks in our client projects such as, keyword-driven framework, data-driven framework, function-driven framework and hybrid framework. Our testing capabilities also include automation testing in the agile environment, where we ensure sufficient test coverage by automating test case scripts in agile processes.
We understand your needs of automating and help you choose the right automation tools for you. Our rich experience helps you migrate from manual to automated testing. Our partners benefit from our automation test solutions and get a faster and more reliable solution. “Why walk when you can run”. We give you the idea on “What to automate”.
Our structured approach to automation design and development delivers an integrated framework with re-usable components, libraries and modularity that ensures stability and scalability and avoids the pitfalls and frustrations that normally accompanies automation efforts.
Some of the key benefits our services provide are -:
  • Faster results -: Our automation tools give you fast results and ensure smooth development cycle. Relying on manual testing progress brings you delay in development process. Computers can work 24 hours a day, including nights, weekends, and holidays.
  • Reliable results -: Using automated testing we ensure we give accurate results. Human error is eliminated. Software tool will give the same accurate results which manual testing cannot give.
  • Parallel and distributed testing -: Our automated testing solution can be executed parallel in on multiple machines with different OS and different versions. A distributed testing gives results of globally spread test.
  • Provide familiar reports-: Development team gets standardized auto generated reports that are easy to understand. It eliminated the need of communication between development and QA team
  • Greater test coverage -: automated testing makes it easier to add extra test cases to the existing suite. Same script can be reused to run on multiple browsers like Firefox, Internet Explorer, and Safari etc.
  • Cost cutting in a long term -: Relying on automation tools reduces manpower thereby reducing cost. By setting up automated suite, testing can be repeated without additional cost.

We emphasis on the following approaches to implement test automation:
  • Code Driven Testing -: We utilize Unit framework to verify if each section of code works. This gives a better code coverage and issues are identified at the time of development. Only when all the tests for all demanded features pass the program is considered complete.
  • Graphical User Interface(GUI) Testing -: We use interactive record and play tools which tests GUI elements of the product. These tools are easy and fast to set up. These tools have power and flexibility of a scripted approach.
  • API Driven testing -: We also provide testing services for commonly available interfaces like COM, HTTP, and command line interface. Test is done using an automation framework.

Popular automation tools we have implemented are-:
  • HP-UFT
  • Fitnesse
  • Selenium
  • Ranorex etc.

Test Data Management


An effective testing tool is inefficient without exhaustive test data. We provide exhaustive test data to ensure testing of functionality, usability and acceptance of product. We ensure appropriate test data is given to system to emulate real world scenario. You get the benefit of using appropriately sized test environments; choose between synthetic and production data, and ensuring test data meets necessary quality level.
An effective test data management helps reduce cost, reduce risk and ensures faster delivery. Test data ensures complete testing coverage in all scenarios.
Our Test Data Management practices helps achieve better quality of testing in the following areas -:
  • Functional testing -: Utilizing sophisticated automation tools and not having sufficient test scenario and teat data to test is a waste of resources. We use a set of production data that is useful to test your solutions. This helps to have more time on testing.
  • Performance testing -: Our automated test data management helps us use thousands of records to test. This drives testing of stability, load, benchmark and other performance features.
  • Service virtualization -: We provide test data to simulate actual scenario. Our test data management services emulate production data to meet your requirements.

Our success in maintaining a test data is because we utilize production data as an important source among other data sources. We maintain a realistic and intact test data collected from distributed locations. Our test data is wide enough to reflect variety of production data taking advantage of inherent functional conditions
We mask sensitive data in accordance with government and industry regulations. This ensures confidentiality of corporate, client and employee information. We recommend enhancing test data to improve test efficiencies and maintain a consistent test environment. This helps to give compressive continuous testing solution for functional, regression, and integration testing.

Testing for Agile and TDD (Test Driven Development)


Testing for Agile methodologies is the probably the highest challenge that testing organizations have in the current technology landscape. As Agile is such an evolutionally model, perhaps it will be on-going challenge that will keep QA/Testing organizations on their toes. To address this enormous task, we always start with understanding fully on the current and future needs of testing and validation, not only at an application level but also at an integrated end-2-end level. This will help us provide the most durable and reliable testing solution.
We have companies asked us to define, how to acknowledge if a Agile process is followed and a starting response we proposed is that “If there is not continuous deployment tightly coupled with some level of continuous validation (automation), it’s a weak claim that an Agile development methodology is practices, not taking anything from the conviction”
Key principle of Agile testing is that it integrated testing with development process. So testers actively participate in the software development process. We therefore combine the entire team to meet project’s usability, quality and timeline objective. The whole team therefore works at sustainable pace and testers and developer team collaborate with each other actively. This gives a faster approach to identify bugs and rectify it. Thus testing and coding becomes an incrementally and iteratively process.
Agile model benefits from the idea of interweaving coding, testing and designing as in Test Driven Development. Special emphasis is given on testing each part of code that is written. A unit test is written for a module that is coded. When the test fails, code is modified so that Unit test passes and refactoring is done. Then next unit test is taken into consideration.
A successful Test Driven model is followed by proper maintenance of test suite, such that running time is not long. Also benefits of Test driven Model is strengthened by full adoption by all developers in developer and test Team.
We identify our partner’s pitfalls when they cannot implement Test Driven Development successfully. This happens when team forgets to run test frequently. A successful approach would be to write short and specific tests and executing tests after completion. Also writing trivial cases should be avoided. Agile testing practices -:
  • Developer team and testers work interactively as full members and contributes to planning and requirement analysis.
  • Continuous feedback is given by testing team and shared with developers.
  • Traceability is maintained between requirements, test cases and bugs.
  • Automation tools are invariably used. An email is automatically sent when a bug occurs.

Browser/Compatibility testing


We offer compatibility or Cross-browser testing solutions to ensure that Software works in select devices. We have helped clients with challenges on not only device and platform/browser/version variation but also on how the browsers and devices are configured. We have experience in testing on key platforms and browser (versions) and versions namely.
a) Internet Explorer
b) Google Chrome
c) Firefox
d) Opera
e) Safari

Testing is done on various OS namely:
a) Windows XP, vista, 7, 8 in 32 bit and 64 bit versions
b) OS/X (Mac, iPhone, iPad)
c) Andriod
d) Linux/Unix

With a wide range of working environments it becomes difficult on UI/Client to find a compatibility issue. Performing such a large number of tests requires good infrastructure and time and resources. We perform simultaneous/synchronized tests on different machines, which give real time test results. This saves time and gives accurate results because tests are performed at the same time interval.
We provide a systematic, fully automated solution for cross-browser compatibility testing that can expose a substantial fraction of the cross-browser issues in modern dynamic web-applications.
We test these Common issues using Compatibility tools:
  • Inconsistent page layout
  • Inconsistent grid
  • CSS validation
  • Active script that are not working in some of the browsers.
  • Certificate issues
  • Pagination issues
  • Ajax and jQuery functionality
  • Issues with cookies and cache
  • Image and Flash issues
  • Backend issues
  • Resolution issues
  • Color consistency issues
Automation tools are of great help for compatibility testing. These are especially helpful because you don’t have to rewrite script for each browser and same script can be modified for all browsers. It also performs synchronized tests.

Case Study:


Our client had an extensive student information solution, which they market to schools and educational institutes. Client faced challenge to redesign and test more than 1000 pages of the application. Such requires responsive design and required to run on all OS versions. This required a proficient and professional QA team to give quick testing services. Our client needed functionality, usability, cross browser test report on popular OS versions.
Our QA head worked with the client’s side to understand requirements and formulate working strategy. We modified our existing framework to suit our current requirements. This helped us to give quick results to client. Thus we achieved quick and effective testing services.