Tuesday, November 18, 2008

Luntbuild

Introduction

Luntbuild is a powerful build automation and management tool. Continuous Integration or nightly builds can be easily set using a clean web interface. Executed builds are well managed using functions such as search, categorization, promotion, patching, deletion, etc. It also acts as a central build artifacts repository and download area for your whole team.

Why Luntbuild?

You may ask why Luntbuild, while there are already many good build automation tools such as Cruise Control, Anthill, and others. Our answer is:

Luntbuild aims at not only being build automation, but also build management system. Executed builds can be categorized, promoted, searched, patched, deleted, etc. This is very important for a nightly builds or Continuous Integration builds, which generate many builds over time.
Luntbuild utilizes the project/schedule concept to easily provide build support for parallel development.
No configuration files, all jobs are done using web interface. You can set your Luntbuild system in less than thirty minutes.

Luntbuild makes advantage of quite a few open source libraries and frameworks listed here.

Luntbuild homepage http://luntbuild.javaforge.com/

What Luntbuild does?

Basic unit of work in Luntbuild is a build. Build execution is triggered either by a schedule or it can be started manually. A build in Luntbuild performs following steps:

  • Checks out source code from the Version Control System(s) (VCS).
  • Labels the current source code based on the current build version.
  • Runs an Ant/Maven/Command/Rake build script in the source tree.
  • Runs an Ant/Maven/Command/Rake post build script in the source tree.
  • Publishes the build log and other build artifacts.
Build configuration, monitoring, and access to the build artifacts are all done using an intuitive web interface. Development and testing teams will have a central area to access the build information.

Thursday, August 7, 2008

Methodology of the project

To automate the QA, first we want to do the manual test. When we are doing the manual test at first time we want to record that test to automate the system. If we are not using an automated testing, QA want to do the manual testing each time. Here we record the first manual test to web interface using Selenium IDE, which runs on Firefox browser as an extension .This manual test can be saved and thus it could be used in later test, by just running on the same application .Also these tests can be saved in different formats to be used for different test environments, such as Java, PHP. Then we have to different ways to run these saved tests.

1. Using Selenium Core

2. Using Selenium RC

We can store these test scripts in depository server (eg: SVN). Our automating system should be find these scripts and run automatically at define time period. So we can make sure that there are no bugs which we find earlier.


Project Architecture and Description




Wednesday, August 6, 2008

Automation QA Tool

Why we want to automate QA ?
QA Automation would be to reduce the time and effort that is needed by the QA staff. It is very hard and boring when they have to perform the same test over and over again, and this may result in stopping the tests after some cycles. But this is not advisable and it is very important to test system for all the test cases after each bug fix. This is an impossible task without an automated testing system in place.
Even there are number of tools for automating the QA process each of them doesn’t fulfill our every requirement. Most of the tools only have some specific features. But we need a system it’ll able to do some important tasks which are expecting by the most software companies and they cannot be found in a single tool.


Objective of Automating Tool

Main Objective of the project is creating an automating testing tool for web applications. And this tool will be able to do the automating test with in our schedule. We can set the testing conditions for our each testing through this tool. Finally it will be generate the complete testing report including errors, critical points and changes from previous phase. This system will give alert to the responsible person via SMS or E-Mail, if there are any critical results.
Our system will be able analyse the log files of the live systems. All project test results go to one project log. The log begins when we define a new test project and ends when we close it. Tests, iterations and results are posted to the log as messages. Our system supports messages of different types: error, warning and informative messages, pictures, links to files, and more. We can nest messages in order to distinguish one part of a test from another.
Messages can be filtered by date, time, type, priority, and then automatically formatted into clear, to-the-point test reports that tell us exactly what we want to know about how our application is performing. The reports can be exported to XML and HTML or to an .MHT file for reading on any machine equipped with Internet Explorer, Firefox or Opera.
We can also create a bug report from the logged results and automatically send it to the responsible person.

What is QA ?

Quality Assurance makes sure the project will be completed based on the previously agreed specifications, standards and functionality required without defects and possible problems. It monitors and tries to improve the development process from the beginning of the project to ensure this.
QA is involved in the project from the beginning. This helps the teams communicate and understand the problems and concerns, also gives time to set up the testing environment and configuration. On the other hand, actual testing starts after the test plans are written, reviewed and approved based on the design documentation.