Tag Archives: tesing

Google tests new Flight Explorer service to help you buy the perfect plane ticket

Google appears to be testing a new service called Flight Explorer. The company has not announced it, nor is there any documentation available via any of Google’s help pages. It doesn’t even have a typical Google beta tag.

Yet the service is fully functional. It detects your current location and puts it in the “From” section. Then it appears to put the nearest country into the “To” section (since I’m in Canada, for me that’s the US).

Unlike Google Flights, which launched in September 2011, Flight Explorer appears to be much more customizable. Not only does it let you easily modify your trip length on the left-hand side, but the top bar is full of options: stops, airline, duration, outbound time, and return time. The first two are drop down menus while the other ones are sliders helping you pick the timeframe you want.

The default page loads the “Lowest fares for trips of 3-5 days” and the outline is clearly something we haven’t seen before. There’s a picture of your destination and then a graph of the lowest prices to get you there, taking your filters into account, for the last few months.

Clicking on any of them redirects you to Google Flights, suggesting that this appears to be an augmentation of the previous service, not a replacement. Maybe the two will end up being merged together, but for now they remain separate. Either way, the goal appears to be getting you to stick to Google when looking for an online flight booking service that will help you purchase airline tickets.

It’s unclear if Google has launched Flights Explorer recently, or if it is just testing it out. When we played with it, however, it was perfectly usable.

We have contacted Google about Flight Explorer. We will update this article if we hear back.

Update on December 13: Google says this is indeed just a test.

“Flight Explorer is a an experimental feature of Flight Search that allow users to explore flight destinations,” a Google spokesperson told TNW. “The feature enables users to consider multiple destinations and multiple days at once, all using live prices, quickly.”

Source:  http://thenextweb.com/google/2012/12/13/google-tests-new-flight-explorer-service-to-help-you-buy-the-perfect-plane-ticket/

Did you like this? Share it:

Crowdsource Testing

What is Crowdsource Testing?
Crowdsource testing is an emerging trend in software testing which exploits the benefits, effectiveness, and efficiency of crowdsourcing and the cloud platform. It differs from traditional testing methods in that the testing is carried out by a number of different testers from different places, and not by hired consultants and professionals. The software is put to test under diverse realistic platforms which makes it more reliable, cost-effective, fast, and bug-free.
This method of testing is considered when the software is more user-centric: i.e., software whose success is determined by its user feedback and which has a diverse user space. It is frequently implemented with gaming, mobile applications, when experts who may be difficult to find in one place are required for specific testing, or when the company lacks the resources or time to carry out the testing internally. Crowdsourcing your software testing consists of delegating onto a number of internet users the task of testing your web or software project while in development to ensure that it contains no defects.
Crowdsource testing companies provide the platform for the testing cycles. They then crowdsourse the Product to a community of testers, who register for testing the software voluntarily.
Testers are paid per bug, depending on type of bug and its market price. The crowdsource testing team is usually in addition to the organization’s testing team, and not usually a replacement.
Crowdsource testing vs Outsource testing
The main difference is that, in crowdsource testing, testers may belong to different workplaces. In outsource testing, the testers are from the same company or workplace that is responsible for outsourcing. In crowdsource testing, people voluntarily test a software with the possibility of not being paid (if no bugs are discovered). Outsource testers always get paid for their work.

Advantages of Crowdsource testing:

  • Real insights from the real world, not just made up test case results
  • Rapid feedback right away.
  • With crowdsourcing, testers automatically test your interactive project against a variety of platforms
  • It is cost effective, as the product company pays only for the valid bugs reported.
  • The pool of testers is diverse with variations in languages as well as locales. This helps in testing applications which are based on localization.
  • Testing done by hundreds of people at the same time. As there are large number of testers testing a software simultaneously, testing can be done quickly, giving more time to market. Time to test the software is comparably less.
  • Leads to better productivity.

Disadvantages of Crowdsource testing:

  • Security and Confidentiality : When offering a project to a crowd for testing, it is exposed to a large number of internet users worldwide.
  • If the project is not released, a large number of users are able to access it fully and discover its secrets.
  • Inconsistent quality and increased workload : The users that compose your crowd of testers are from different backgrounds, speak different languages and possess different levels of experience.
  • They may be a number of poorly written bugs, duplicate bugs and erroneous bugs.

Some Crowdsource testing Tools:

  • InnoCentive

  • TopCoder

  • Amazon Mechanical Turk

  • uTest

  • Passbrains

  • Bugfinders

  • TXTeagle

source: http://www.softwaretestingdiary.com/2012/07/crowdsourced-testing.html

Did you like this? Share it:

Continuous Integration and Testing :Unit and Integration Tests With Maven and JUnit Categories

Introduction

This example shows how to split unit and integration tests using Maven and JUnit categories.
It is especially useful for existing test suites and can be implemented in minutes.

Why use this?

My previous post showed how we to use a maven profile to split unit and integration tests.
http://johndobie.blogspot.co.uk/2011/06/seperating-maven-unit-integration-tests.html
This has been a very well read post and I like how it uses seperate directories. However this example show a much simpler technique that can easily be applied to legacy test suites.
It offers most of the benefits of the original, and sits more comfortably in the Maven world.

Code

The code for the example is here.

svn co https://designbycontract.googlecode.com/svn/trunk/examples/maven/categor...
mvn clean install

JUnit Categories

As of JUnit 4.8 you can define your own categories for tests. This enables you to label and group tests.

This example shows how easy it is to separate unit and integration test using the @Catgegory annotation.

http://kentbeck.github.com/junit/javadoc/latest/org/junit/experimental/categories/Categories.html

Define the Marker Interface

The first step in grouping a test using categories is to create a marker interface.

This interface will be used to mark all of the tests that you want to be run as integration tests.

public interface IntegrationTest {}

Mark your test classes

Add the category annotation to the top of your test class. It takes the name of your new interface.

import org.junit.experimental.categories.Category;
@Category(IntegrationTest.class)
public class ExampleIntegrationTest{

@Test
public void longRunningServiceTest() throws Exception {

}
}

Categories can be used to mark classes or methods. Really in my opinion you should only mark a class.

If you have both unit and integration tests in a single class then split it.

Configure Maven Unit Tests

The beauty of this solution is that nothing really changes for the unit test side of things.

We simply add some configuration to the maven surefire plugin to make it to ignore any integration tests.


org.apache.maven.plugins
maven-surefire-plugin
2.11


org.apache.maven.surefire
surefire-junit47
2.12




**/*.class

com.test.annotation.type.IntegrationTest


There are 2 very important parts. The first is to configure surefire to exclude all of the integrations tests.

com.test.annotation.type.IntegrationTest

Surefire will run all of your tests, except those marked as an integration test.

The other important part is to make sure the surefire plugin uses the correct JUnit provider. The JUnit47 provider is needed to correctly detect the categories.



org.apache.maven.surefire
surefire-junit47
2.12


Running the unit tests

To make sure this works correctly we can run the unit tests

mvn clean test

You can see from the output below that the unit test is run, but not the integration test.

-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.test.EmptyUnitTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

Configure Maven Integration Tests

Again the configuration for this is very simple.

We use the standard failsafe plugin and configure it to only run the integration tests.


maven-failsafe-plugin
2.12


org.apache.maven.surefire
surefire-junit47
2.12



com.test.annotation.type.IntegrationTest




integration-test



**/*.class





The configuration uses a standard execution goal to run the failsafe plugin during the integration-test phase of the build.

The following configuration ensures only the integration tests are run.

com.test.annotation.type.IntegrationTest

And again the JUnit provider must be correctly configured.



org.apache.maven.surefire
surefire-junit47
2.12


That’s it!

Running the integration tests

We can now run the whole build.

mvn clean install

This time as well as the unit test running, the integration tests are run during the integration-test phase.

-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.test.AnotherEmptyIntegrationTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 sec

Running com.test.EmptyIntegrationTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec

Results :
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
source:
http://www.javaworld.com/community/?q=node/8374
Did you like this? Share it:

Practical tips and insight on how to test database

These days, database is one of the inevitable parts of a software application. Whether it is healthcare of finance, leasing or retail, mailing application or controlling spaceship, behind the scene a database is always in action.

Following are what to test in database testing:

1. Ensure data mapping

2. Ensure ACID Properties of Transactions

3. Ensure Data Integrity

4. Ensure Accuracy of implemented Business Rules

Here are some tips to how to test database:

1. Create your own Queries

First of all a tester should have very good knowledge of SQL and specially DML statements. Secondly, the tester should acquire good understanding of internal DB structure of AUT. Moreover, if the application is very complex then it may be hard or impossible for the tester to write all of the needed SQL queries himself or herself. However, tester may get help from the developer too.

2. Observe data table by table

If the tester is not good in SQL, then he or she may verify the result of CRUD operation, performed using GUI of the application, by viewing the tables of DB.

3. Get query from developer

This is the simplest way for the tester to test the DB. Perform any CRUD operation from GUI and verify its impacts by executing the respective SQL query obtained from the developer. It requires neither good knowledge of SQL nor good knowledge of application’s DB structure.

Source: http://www.softwaretestinghelp.com/database-testing-%e2%80%93-practical-tips-and-insight-on-how-to-test-database/

Did you like this? Share it:

Importance of documentation in software testing

Documentation is an important part of software testing. It writes narrative information about data processing activities that was developed and maintained, which includs system specifications, test designs, test plans, test cases, test conditions and results, program listings, bug reports, operator manuals, user manuals, configuration of the software, flow charts, status report of the processes and so on.

Proper documentation can help and guide both development and testing team through the help of well-written specifications and test plans or a simple list to follow on testing to ensure the quality of the program. Moreover, the details of the test cases and results, bugs reports and how to replicate them can also be helpfus. Furthermore, documentation helps to configure or set-up the program through the configuration document and operator manuals. As a tester, you must remember that being attentive to details and writing documentation is a vital role.

Source: http://www.softwaretestingportal.com/documentation-purpose-role-use/

Did you like this? Share it:

Introduction of Quality attributes

Quality can be defined as: Degree of excellence – Oxford dictionary, Fitness for purpose – Edward Deming, Best for the customer’s use and selling price – Feigenbaum, The totality of characteristics of an entity that bear on its ability to satisfy stated or implied needs – ISO. Each attribute can be used to measure the product performance. These attributes can be used for Quality assurance as well as Quality control. The attributes are:

1. Reliability

Product reliability is measured in terms of working of project under different working environment and different conditions.

2. Maintainability

Different versions of the product should be easy to maintain. Maintenance should be cost effective and easy.

3. Usability

This can be measured in terms of ease of use. Application should be user friendly.

4. Portability

This can be measured in terms of costing issues related to porting, Technical issues related to porting, Behavioral issues related to porting.

5. Correctness

Application should be correct in terms of its functionality, calculations used internally and the navigation should be correct, which means application should adhere to functional requirements.

6. Efficiency

To major system quality attribute. Measured in terms of time requires to complete any task given to the system.

7. Integrity of security

Integrity comes with security. System integrity or security should be sufficient to prevent unauthorized access to system functions, preventing information loss, ensure that the software is protected from virus infection, and protecting the privacy of data entered into the system.

8. Testability

System should be easy to test and find defects. If required should be easy to divide in different modules for testing.

9. Flexibility

Adaptable to othere products with which it needs interaction.

10. Reusability

Software reuse is a good cost efficient and time saving development way.

11. Interoperability

Interoperability of one system to another should be easy for product to exchange data or services with other systems.

Source: http://www.softwaretestinghelp.com/what-are-the-quality-attributes/

Did you like this? Share it:

SBI General signed a contract with Maveric for software testing

SBI General Insurance is a joint venture betwwen the State Bank of India and Insurance Australia Group and a green field venture in the Insurance domain in India. Maveric Systems is an independent software testing specialist. Recently, SBI General selects Maveric for software testing and has signed a multi-year contract. SBI General has rolled out its first set of products across the corporate and retail space with validation and production support from Maveric.

CIO and Head of IT, SBI General Insurance Manoj Agarwal said that General is benefiting from Maveric’s domain expertise in Insurance, dynamic test strategy and good focus on project governance. SBI General is working towards having one of the most advanced technology stacks in the global Insurance space.

Source: http://biztech2.in.com/news/software/sbi-general-selects-maveric-for-software-testing/118912/0

Did you like this? Share it: