Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

Currently we (in the team) are using silktest (for last 8-9 years) and now looking for other tools to replace silktest, it's a different argument on why to look for other tool, setting that aside, here we go. The following are the requirements and would be great to hear your suggestions on this.

  • AUT: Web based (with .NET)
  • Tool need to interact with Database (MS SQL server) & vb.net utilities (front end for other teams to trigger exec)
  • Should be able to run on remote pool of machines. (Scripts run 24x7 on the machines)
  • Do NOT need integration with test management tool.
  • Open source tools would be great.
  • Looking for a robust tool with a strong framework to build on.

I'm in a very small team and would like to hear some constructive comments/criticisms. I was reading all the other similar questions and found that the suggestions were more towards selenium, watir/watin...etc

share|improve this question
    
Is your team able to build tools yourself (skill & time wise)? Can it be a combination of tools? Is there a preferred language(c#, python, etc.)? –  Dan Snell Oct 4 '12 at 16:41
    
Yeah there are 2-3 of us skilled in dev, time could be a factor, but we should be able to squeeze in unless we are not building a whole new automation tool... Easy to catch up language considering other teammates (anyways its gonna be new so easy to start is preferred). Yeah combination is also accepted. Main concern is robust and able to handle browser and dialog boxes well. There are few places where excel files are exported. Need to make sure it's all supported. –  user1424385 Oct 4 '12 at 16:59
add comment

5 Answers

WatiN is a web testing framework designed to be used with a .NET stack. The code you write is also .NET so you can interact with your database in the same way that your actual application accesses it (i.e through your ORM, API or whatever). It's also open source and runs via MsTest so no additional applications are needed.

As has already been noted, it's also a good idea to look into SpecFlow which has also been designed for .NET and is also open source.

share|improve this answer
    
Hey thanks for the details appreciate it, I'm looking into them. sorry I cannot vote up for the reply as I'm new here. –  user1424385 Oct 8 '12 at 18:14
add comment

I have faced a similar situation in my current role. Custom development with selenium worked out well. Sharing my learning's

  • AUT: Web based (with .NET) - Since it is web based UI, You should be able to use Selenium. You can code test cases in C#

  • Tool need to interact with Database - Inside the test code open a DB connection and fetch required parameters if you need to past it to a test case. In case if it is independant operation execute it as a seperate console app. On console app is success trigger the UI tests

  • Should be able to run on remote pool of machines - I had a similar scenario. You can create a .NET code and invoke the applications both Console APP, Selenium tests in a sequential manner. This application which invokes can be scheduled using windows scheduler to run on scheduled manner. Using System.Diagnostics namespace you have Process class which provides options to execute exes

  • Open source tools would be great - C#, Selenium is a good combination. If you are good in java you can also try it out

  • Options - Another alternate option is use batch files to execute the exe's / selenium tests. Quick learning is needed to implement using batch files in windows

  • C# Learning - Learning's C# is quite easy if you are familiar with C/C++

  • Advice - Do not taget the big picture in one go, develop the components one at a time. This will be a very good learning and a good foundation to learn developing automation tools, You have to refactor to make it robust. Perfection cannot be attained in first attempt, Code - Review - Refactor - Relearn

share|improve this answer
add comment

I have worked with a few automated tools.

a) Quick Test PRofessional. It is expensive, but it is not that tough to get started with your test cases. It can automate, Flex, Windows objects. Also, It can communicate with SQL Server and you can write your automated test case scripts in VB.

b) Selenium is a free test automation tool. You can use a variety of programming languages to automate your test cases.

c) I have build a test framework in Perl. Using Perl, I can test web services, Databases, Interact with Web Pages. I would take more time to learn it and design the test tool, but it is a lot of fun. Also you will learn a lot about the Technology, since one would poke around here and there.

share|improve this answer
    
QTP is super expensive compared to other tools in the market, I'm not sure if I would miss anything in open source tools compared to it (QTP compatibility with QC is something not advantageous here) –  user1424385 Oct 9 '12 at 4:14
add comment

I would recommend the following based on your question.

Because you need to interact with SQL server and have a windows client I would recommend that you need to use either .net and C# and winforms, or ruby and shoes as your development environment. I would highly recommend that you use the same language and environment that you developers use.

Automation of the .Net web application should be done using WatiN or Selenium WebDriver, I am a long time WatiN user and it is an awesome framework, but if starting out now I would probably use webdriver as it is becoming a W3C standard

To access the database you can use any number of client libraries in either environment.

These solutions will be robust, but coding heavy.

I would also recommend that you look into using Cucumber or Specflow to define your test cases.

share|improve this answer
    
Hey thanks for the suggestion, I'm definitely looking into the links, sorry I cannot vote up for the reply as I'm new here. –  user1424385 Oct 8 '12 at 18:12
add comment

I'm currently working on a new UI automation & testing tool called Automa. It's in early stage of development and at the moment provides basic functionality. However, we have already released the first version, which allows automating UI commands on Windows applications in a very easy way, such as:

start("notepad")
type("Hello World!")
click("File", then="Save")
enter("test.txt", into="File name")
click("Save")
click("File", "Exit")

Automa is written in Python and can be used either as a standalone application or imported as a library to any other Python program. The commands are so simple that non-devs can easily use it. Maybe you'll find it useful.

share|improve this answer
    
One of the posters criteria was 'robust' so a new tool in early stage of development doesnt match that requirement –  Phil Kirkham Oct 4 '12 at 18:03
    
@Tytus, thanks for sharing about your tool, like I mentioned we are looking for something that could help us to cover more test cases and the machines are running 24X7, cannot afford to lose too much time on research and fixes. Congrats and Good luck with the tool. –  user1424385 Oct 4 '12 at 19:33
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.