Nothing Is Impossible…

Total Page:16

File Type:pdf, Size:1020Kb

Nothing Is Impossible… Raveendran Nothing is impossible… Hit Count SEP Custom HTML report for 84,791 hits 5 2012 Ruby(Watir/Selenium) Base Automation framework RSS Links Requirement: RSS - Posts Sample HTML report for any ruby based Automation Testing Framework RSS - Comments Installation/Changes : 1. Create code.rb file and paste the below code. Search … 2. Create folder named as Results in the same location. Code: My Tags def get_time_name Acts_as_attachment autoitx3.dll cheat sheet $time=Time.now cucumber cuRF error excel gem $time_name="#{$time.hour.to_s}-#{$time.min.to_s}-#{$time.sec.to_s}-#{$time.day.to_s}- height highline image save image scrap #{$time.mon.to_s}-#{$time.year.to_s}" $result_date = "#{$time.day.to_s}-#{$time.month.to_s}-#{$time.year.to_s}" Jazzez jazzezravi manual testing end pagination pagination in rails plugin in rails QA def create_report get_time_name rails rasta raveendran ror @result_file_name="Report"+"-"+$time_name @full_file_name="Results/#{@result_file_name}.html" rspec rspec watir Ruby ruby $report=File.open(@full_file_name,'w') end excercise ruby gem ruby def insert_head_title(title) gems Ruby solutions ruby watir- $report.puts "<html><head> <title> #{title} </title> webdriver save_images selenium </head>" selenium-webdriver selenium- end webdriver ruby selenium ide selenium def start_table ruby selenium webdriver code $report=File.open(@full_file_name,'a') $report.puts "<table border=1> Spreadsheet Testing Updation in rails <tr> <th>Test Case Name</th> watir watir-webdriver web <th>Test Case Description</th> driver width <th>Browser Name</th> <th>Result</th> <th>Remarks</th> bankbazaar </tr>" $report.close end BankBazaar def insert_reportname_date(name,date) $report.puts "<body bgcolor='#5CB3FF'> <p align='left' size=2> Personal <b><img src='https://encrypted-tbn1.google.com/images?q=tbn:ANd9GcQB0l0xnGOHuRPFMMMi- OVg39nfAU1Ogvxr7Okk7DD8ZpqlMF9r'></img> </b> Muthu Selvan </p> Political Lines <p size=12> <center> <b><u>#{name} </u></b></center> Self Confidence </p> <p align='right' size=12> Srikanth <b>Date: #{date} </b> </p>" $report.close What I am doing ? end def report_row(*details) Custom HTML report for $report=File.open(@full_file_name,'a') Ruby(Watir/Selenium) Base Automation name=details[0] framework wp.me/p5FW9-c6 1 day ago desc=details[1] How to zip the Folder using Ruby How to zip the Folder using Ruby browser=details[2] wp.me/p5FW9-c3 1 week ago result=details[3] reason=details[4] Ruby Gem xml-simple wp.me/p5FW9-bZ if result.downcase == "pass" 1 week ago $report.puts "<tr> <td>#{name}</td> <td> #{desc}</td> <td> #{browser} </td> <td bgcolor='green'>#{result}</td> <td>#{reason}</td> </tr>" else $report.puts "<tr> <td>#{name}</td> <td> #{desc}</td> <td> #{browser} </td> <td bgcolor='red'>#{result}</td> <td>#{reason}</td> </tr>" end $report.close end def close_table $report=File.open(@full_file_name,'a') $report.puts "</table></br>" $report.close end def summary_report(overall,passed,failed) http://www.box.net/static/flash/widget_player.swf $report_overall=overall $report_pass=passed $report_fail=failed $report=File.open(@full_file_name,'a') Follow Blog via Email $report.puts "<p> <b>Total Test cases : #{$report_overall} </b></p> Enter your email address to follow this blog <p> <b>Passed : #{$report_pass} </b></p> and receive notifications of new posts by <p> <b>Failed : #{$report_fail} </b></p> email. </body> </html>" Join 563 other followers $report.close end create_report Follow insert_head_title("Raveendran -- Sample HTML Report") insert_reportname_date("My Test Report",$result_date ) start_table report_row("Check Google Home Page","Check The Title in Google Home Page","IE","PASS","Title Present") report_row("Check Google Home Page","Check The Title in Google Home Page","FF","FAIL","Title Not Present") close_table summary_report(2,1,1) Output HTML File: By raveendran • Posted in cheat sheet, QA, Ruby, Ruby 1.9, ruby excercise, selenium, selenium-webdriver, Selenium- webdriver, watir, watir-webdriver • Tagged automation html ruby, automation ruby, framework html, html report, reusable report, reuse html report, ruby framework, ruby html, ruby html report, sample html report, selenium html, watir html, watir html report, webdriver html AUG How to zip the Folder using Ruby 30 2012 Step 1 – Install ruby-zip gem >gem install ruby-zip Step 2 – Create the folder named as “Chrome” and puts 5 files within that folder Step 3 – create code.rb file and put the below code with in the ruby file def zip_it(path) require 'rubygems' require 'zip/zip' require 'zip/zipfilesystem' path.sub!(%r[/$],”) archive = File.join(path,File.basename(path))+’.zip’ FileUtils.rm archive, :force=>true Zip::ZipFile.open(archive, ‘w’) do |zipfile| Dir["#{path}/**/**"].reject{|f|f==archive}.each do |file| zipfile.add(file.sub(path+’/',”),file) end end end zip_it(“chrome”) Step 4 – Run the Ruby File Output : Chrome/Chrome.zip file created By raveendran • Posted in zip • Tagged folder zip, ruby zip file, ruby-zip, zip folder AUG Ruby Gem xml-simple 29 2012 Code: 1. Create test.xml file Ex. D:\xml\test.xml 2. Copy the XML content from http://msdn.microsoft.com/en- us/library/windows/desktop/ms762271(v=vs.85).aspx and paste in to test.xml file 3. Install xml-simple library CMD — >gem install xml-simple 4. Create new Ruby File code.rb Ex. D:\xml\code.rb require 'rubygems' require 'xmlsimple' config = XmlSimple.xml_in('test.xml', { 'KeyAttr' => 'name' }) i=0 while i < 12 puts config["book"][i]["id"] puts config["book"][i]["title"] puts config["book"][i]["author"] puts "-----------------------" i+=1 end Output : bk101 XML Developer’s Guide Gambardella, Matthew ———————– bk102 Midnight Rain Ralls, Kim ———————– bk103 Maeve Ascendant Corets, Eva ———————– bk104 Oberon’s Legacy Corets, Eva ———————– bk105 The Sundered Grail Corets, Eva ———————– bk106 Lover Birds Randall, Cynthia ———————– bk107 Splish Splash Thurman, Paula ———————– bk108 Creepy Crawlies Knorr, Stefan ———————– bk109 Paradox Lost Kress, Peter ———————– bk110 Microsoft .NET: The Programming Bible O’Brien, Tim ———————– bk111 MSXML3: A Comprehensive Guide O’Brien, Tim ———————– bk112 Visual Studio 7: A Comprehensive Guide Galos, Mike ———————– By raveendran • Posted in Blogroll, Ruby, xml • Tagged ruby xml, ruby xml-simple, software-development, xml ruby simple, xml-simple AUG Drag and Drop using Watir-webdriver 27 2012 Requirement : Drag and Drop an element to the particular location Code: require 'rubygems' require ‘watir-webdriver’ browser=Watir::Browser.new :ie browser.goto("http://devfiles.myopera.com/articles/735/example.html") my_element=browser.li(:text,'Art Brut') target=browser.ul(:id,'Rej').li(:text,'None') my_element.fire_event("onmousedown") driver=browser.driver driver.action.click_and_hold(my_element.wd).perform sleep 2 driver.action.move_to(target.wd).perform sleep 2 target.fire_event("onmouseup") By raveendran • Posted in Prawn, Proxy server -- Registry, ramaze, random names • Tagged drag, drag and drop, drop, selenium drag, selenium drag and drop, watir drag, watir drop, webdriver drag and drop, webdriver drag item JUL Get the Version detail of opened 27 2012 Selenium/Watir Webdriver Browser Code for Selenium WebDriver IE Browser : require 'rubygems' require 'selenium-webdriver' br=Selenium::WebDriver.for :ie ie=br.execute_script("return navigator.userAgent;") # Ex. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C)" puts ie.split("MSIE ")[1].split(";")[0] OUTPUT –> 9.0 ——————————————————————————————————————————————- Code for Selenium WebDriver Firefox Browser : require 'selenium-webdriver' br=Selenium::WebDriver.for :ff ff=br.execute_script("return navigator.userAgent;") # Ex. "Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0" puts ff.split("/")[-1] OUTPUT –> 12.0 ——————————————————————————————————————————————- Code for Watir WebDriver IE Browser : require 'rubygems' require 'watir-webdriver' br=Watir::Browser.new :ie ie=br.execute_script("return navigator.userAgent;") puts ie.split("MSIE ")[1].split(";")[0] OUTPUT –> 9.0 ——————————————————————————————————————————————- Code for Watir WebDriver Firefox Browser : require 'rubygems' require 'watir-webdriver' br=Watir::Browser.new :ff ff=br.execute_script("return navigator.userAgent;") puts ff.split("/")[-1] OUTPUT –> 12.0 ——————————————————————————————————————————————- By raveendran • Posted in Ruby, selenium, Selenium-webdriver, watir • Tagged browser version, collect version detail, execute_script, ff version selenium-webdriver, ff version watir, ff version watir-webdriver, get browser version, ie version, ie version selenium-webdriver, ie version watir-webdriver, selenium, selenium-webdriver, watir, watir-webdriver JUL Verify the Element Height/Width in 1 26 2012 different browser dimensions using Selenium/Watir Webdriver Selenium WebDriver Code : require 'rubygems' require 'selenium-webdriver' browser=Selenium::WebDriver.for :ie browser.navigate.to(“google.com”) width1=browser.find_element(:id,’hplogo’).style(“width”) height1=browser.find_element(:id,’hplogo’).style(“height”) browser.manage.window.resize_to(200,600) width2=browser.find_element(:id,’hplogo’).style(“width”) height2=browser.find_element(:id,’hplogo’).style(“height”) if width1=width2 puts “Test Case Passed : Width is not changed” else puts “Test Case Failed : Width is changed” end if height1=height2 puts “Test Case Passed : Height is not changed” else puts “Test Case Failed : Height is changed” end browser.close OUTPUT: Test Case Passed : Width is
Recommended publications
  • Watir Recipes the Problem Solving Guide to Watir
    Watir Recipes The problem solving guide to Watir Zhimin Zhan This book is for sale at http://leanpub.com/watir-recipes This version was published on 2017-02-12 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. © 2013 - 2017 Zhimin Zhan Also By Zhimin Zhan Practical Web Test Automation Selenium WebDriver Recipes in Ruby Selenium WebDriver Recipes in Java Learn Ruby Programming by Examples Learn Swift Programming by Examples Selenium WebDriver Recipes in Python API Testing Recipes in Ruby Selenium WebDriver Recipes in Node.js To Xindi, for your understanding and support. Thank you! Contents Preface ........................................... i Preface to First Edition ................................ ii Who should read this book .............................. iii How to read this book ................................. iii Get recipe test scripts ................................. iii Send me feedback ................................... iv 1. Introduction ...................................... 1 Watir and its variants ................................. 1 RSpec .......................................... 2 Run recipe scripts ................................... 3 2. Watir and Selenium WebDriver .......................... 10 Install Selenium Browser Drivers ........................... 10 Cross browser testing
    [Show full text]
  • Analysis of Code Coverage Through Gui Test Automation and Back End Test Automation Mr Tarik Sheth1, Ms
    IJISET - International Journal of Innovative Science, Engineering & Technology, Vol. 3 Issue 3, March 2016. www.ijiset.com ISSN 2348 – 7968 Analysis Of Code Coverage Through Gui Test Automation And Back End Test Automation Mr Tarik Sheth1, Ms. Priyanka Bugade2 , Ms. Sneha, Pokharkar3 AMET University1, Thakur College of Science and Commerce2,3 ABSTRACT coverage measurement through GUI automation and back Software testing provides a means to reduce errors, cut end automation testing of the software covers all aspects of maintenance and overall software costs. Testing has become testing, a particular website or a web application..The most important parameter in the case of software purpose of this project is to invent our own test tool which development lifecycle (SDLC). Testing automation tools will give more sophisticated outcomes then the cucumber enables developers and testers to easily automate the entire tool which will be using .The outcome of our research tool process of testing in software development. It is to examine & should be more better then the testing tool which is already modify source code. The objective of the paper is to conduct available in the market that is cucumber tool.. [3]. The paper a comparative study of automated tools such as available in tries to investigate and evaluate the effect of automation market in Selenium and cucumber test tool. The aim of this testing such as GUI and back end testing. [4]. research paper is to evaluate and compare automated The problems with manual testing are, it is very time software testing tools to determine their usability and consuming process, not reusable, has no scripting facility, effectiveness.
    [Show full text]
  • Ruby Cucumber, Selenium, Watir and Pageobject Course Content
    Ruby Cucumber, Selenium, Watir and PageObject Course Content ● Ruby History ● Environments and Editors ● Ruby Download and Installation ● Folder Structure and Gems Location ● Ruby Command Prompt Vs IRB ● puts Vs p Vs print ● Comments ● Variable Types with Naming Convention ● Numeric ● Interpolation ● Conditional and Controller Statements & Modifiers ● Operator Types ● Ruby Ranges and Date-time ● What is an Object in Ruby ● Object Types Built in Objects 1. Strings 2. Symbols 3. Arrays 4. Hashes ● Instance_methods(pre-defined methods) ● Methods(Functions) ● Iterators and Loops Statements ● Regular Expressions ● Files ● Modules Mixins with Naming Conventions ● Basic Object Orientation Concepts with Naming Conventions ● Doubts Clarification Introduction to Cucumber 1. Setup environment 2. What is cucumber 3. Generate cucumber framework 4. Framework flow 5. Setup configuration 6. What are watir, selenium, page-object 7. Writing Features 8. Writing Scenarios 9. Writing Step_definitions 10. Find out html element id’s, name and xpath 11. Running Tests in Different Browsers 12. Background 13. Scenario Outline 14. Tagging 15. Hooks 16. Alert 17. Screen_shot 18. Generate HTML Report 19. Watir-webdriver 20. Selenium-webdriver 21. Page-object ● What does student learn? By the end of the Ruby cucumber online training, student will learn below main concepts practically. ○ Ruby, Regular_expressions, Oop’s, Cucumber framework ○ Selenium-webdriver, watir-webdriver, page-object, testgen, etc., ○ Automation testing with web applications ★ What are advantages after learned this course? ○ Resume preparation by experienced trainer for shortlist for job ○ Student get job easily. ○ Student can manage job easily without job support. ○ This training 90% practical and 10% theory in every session with real time scenarios. ★ Student or Consultant must pay 70% 1st installment after 3 days from demo.
    [Show full text]
  • Comparative Analysis of Open Source Automated Software Testing Tools: Selenium, Sikuli and Watir
    International Journal of Information & Computation Technology. ISSN 0974-2239 Volume 4, Number 15 (2014), pp. 1507-1518 © International Research Publications House http://www. irphouse.com Comparative Analysis of Open Source Automated Software Testing Tools: Selenium, Sikuli and Watir Inderjeet Singh and Bindia Tarika Guru Nanak Dev Engineering College Ludhiana, [email protected] Guru Nanak Dev Engineering College Ludhiana, [email protected] Abstract Testing is one of the important aspects of Software Engineering and there is wide availability of open source software testing tools in this category of which Selenium, Sikuli and Watir are usually used open source automated testing tools. This paper presents the comparative analysis of these different tools in terms of their recording capabilities, Data Driven Testing, Efficiency, Languages Supported, Test and Code Reusability that conclude the effectiveness of testing tool under these parameters Keywords: Selenium RC, Selenium IDE, Selenium Web Driver, Sikuli, Watir, Eclipse Introduction Software testing is one the main component in developing software successfully and to ensure its correctness about the operation which it is expected to perform under different input cases. Various strategies or methods exist for performing software testing, major of which are Black Box and White Box Testing. Where Black Box testing gives an abstract view of operations performed by entire software, White Box testing gives detailed view about how the process of the software are carried out [1]. Other Classification of the Software testing techniques can be done accordingly how the testing is carried out [2]. According to this classification testing can be either Manual Testing or Automated Testing Manual Testing is carried out by preparing test cases manually and is more prone to human errors where as Automatic Testing is carried out by recording the various test cases on the basis of what actions had user performed.
    [Show full text]
  • Testing and Quality in Agile Development
    Testing and Quality in Agile Development Speaker: Allan Watty Company: ABB Inc Website: www.abb.com/enterprise-software Welcome to the PMI Houston Conference & Expo 2015 • Please put your phone on silent mode • Q&A will be taken at the close of this presentation • There will be time at the end of this presentation for you to take a few moments to complete the session survey. We value your feedback which allows us to improve this annual event. 1 Key Objectives • Challenges to expect with Agile test practices in large-scale, multi-team projects • The Power of three Will • Team dynamics cover • Organizational strategies & considerations • Test automation considerations • Customer, business impacts Key Objectives • Automation details Will not • In-depth tool details cover • Code samples Speaker Bio ABB Inc., 2012 – present • Senior Development Manager • New Product development with 2 Scrum Teams PROS, 2005 – 2012: Development Manager, QA Manager Aspen Technology, 2003 – 2005: Development Manager BMC Software, 1995 – 2003: Senior Development Manager Education • B.S. Math & Biology, Lehman College, CUNY • M.S. Computer Science, NYU Polytechnic • M.B.A , University Of Houston Bauer College, Certifications: PMP, CSM President – Agile Leadership Network Houston Chapter Former Life: Musician, Math Teacher Agenda • Agile Testing Challenges • The whole team approach • Designing for Testability • Definitions of Ready and Done • Risk based testing • Using the Power of Three • Making testing a first-class citizen • Acceptance Test Automation • Core
    [Show full text]
  • Automated Testing That Doesn't Hurt
    Watir Automated testing that doesn’t hurt About Me ●Željko Filipin ●functional testing of web applications since 2004 ●blog: ZeljkoFilipin.com ●podcast: WatirPodcast.com ●twitter: zeljkofilipin ●member of Watir core team Watir: about ●pronounced water ●stands for “Web Application Testing in Ruby” ●open-source library for automating web browsers ●can test web applications regardless platform it was implemented in (Ruby, .NET, Java, PHP...) Watir: languages ●Ruby - Watir ●.NET – WatiN ●Java - Watij Watir: browsers ● Internet Explorer - Watir ○ Windows ● Firefox - FireWatir ○ Windows, Linux, Mac ● Safari - SafariWatir ○ Mac ● Chrome - ChromeWatir ○ Windows ● Opera - OpWatir ○ not released yet ● no browser - Celerity ○ Windows, Linux, Mac Watir: test runners ●homebrew ●Test::Unit (1.2.3, 2.0) ●RSpec ●Cucumber Watir: frameworks ●watirloo - Marek J ●WatirCraft - Bret Pettichord (Watir lead developer) ●taza - Adam Anderson taza: overview ●opinionated browser-based test framework ●sites ○pages ■elements ■filters ■partials ○flows watir: code irb require "watir" browser = Watir::IE.new browser.goto "http://www.google.com/" browser.url == "http://www.google.com/" browser.link(:text, "Images").click browser.text.include? "The most comprehensive image search on the web" #=> true browser.text_field(:name, "q").set "Watir" browser.button(:value, "Search Images").click browser.text_field(:name, "q").value == "Watir" #=> true browser.select_list(:name, "imagesize").select "Large images" browser.image(:src, /flickr/).exists? #=> true watir: test.rb require
    [Show full text]
  • Study of Browser Based Automated Test Tools WATIR and Selenium
    International Journal of Information and Education Technology, Vol. 4, No. 4, August 2014 Study of Browser Based Automated Test Tools WATIR and Selenium Nisha Gogna Abstract—Web testing is the name given to software testing II. WATIR (4.0) that focuses on web applications. Complete testing of a web Watir (Web Application Testing in Ruby, pronounced based system before going live can help address several issues. Manually testing is a time consuming practice and is difficult to water), is an open-source (BSD) family of Ruby libraries for repeat but can’t be overlooked. Each time a software does not automating web browsers as specified in Table I. perform to specifications; the program will record and report It drives Internet Explorer, Firefox, Chrome, Opera and the exact command that caused the problem. Once the problem Safari, and is available as a RubyGems gem. Watir was is identified and the bug is fixed, one can execute the very same primarily developed by Bret Pettichord and Paul Rogers. set of commands to verify the success. There are a number of Watir is an open-source (BSD) library for automating web commercial and open source tools available for assisting with the development of test automation. In this paper, automated browsers. It allows writing tests that are easy to read and test tools named WATIR (Web Application Testing in Ruby) maintain in a simple and flexible manner. and Selenium are proposed to support the automated test Like other programming languages, Ruby gives the power scenario for web based applications. to connect to databases, read data files and spreadsheets, export XML, and structure the code as reusable libraries.
    [Show full text]
  • Benchmarking Web-Testing - Selenium Versus Watir and the Choice of Programming Language and Browser
    Benchmarking Web-testing - Selenium versus Watir and the Choice of Programming Language and Browser Miikka Kuutila, M3S, ITEE, University of Oulu, Finland Mika Mäntylä, M3S, ITEE, University of Oulu, Finland Päivi Raulamo-Jurvanen, M3S, ITEE, University of Oulu, Finland Email: [email protected], Postal address: P.O.Box 8000 FI-90014 University of Oulu Abstract Context: Selenium is claimed to be the most popular software test automation tool. Past academic works have mainly neglected testing tools in favour of more methodological topics. Objective: We investigated the performance of web-testing tools, to provide empirical evidence supporting choices in software test tool selection and configuration. Method: We used 4*5 factorial design to study 20 different configurations for testing a web-store. We studied 5 programming language bindings (C#, Java, Python, and Ruby for Selenium, while Watir supports Ruby only) and 4 Google Chrome, Internet Explorer, Mozilla Firefox and Opera. Performance was measured with execution time, memory usage, length of the test scripts and stability of the tests. Results: Considering all measures the best configuration was Selenium with Python language binding for Google Chrome. Selenium with Python bindings was the best option for all browsers. The effect size of the difference between the slowest and fastest configuration was very high (Cohen’s d=41.5, 91% increase in execution time). Overall Internet Explorer was the fastest browser while having the worst results in the stability. Conclusions: We recommend benchmarking tools before adopting them. Weighting of factors, e.g. how much test stability is one willing to sacrifice for faster performance, affects the decision.
    [Show full text]
  • Test Automation of Web Applications Can Be Done More Effectively by Accessing the Plumbing Within the User Interface. Here Is A
    Test automation of Web applications can be done more effectively by accessing the plumbing within the user interface. Here is a detailed walk-through of Watir, a tool many are using to check the pipes. by Jonathan Kohl and Paul Rogers 40 BETTER SOFTWARE APRIL 2005 www.StickyMinds.com As Web applications become more popular and increasingly To add the numbers 2 and 2, we enter this in IRB and hit Enter. more complex, the need for test automation of these applica- Note that what the user types is in bold type: tions grows. Automating tests through a GUI is difficult and can be costly. The most popular methods of automating using irb> 2 + 2 a GUI are to use window coordinates to click items or to create => 4 and use references to window objects. The first method relies on locations of objects not changing on a page; the second IRB evaluated the expression and printed the result. usually relies on a type of proprietary object mapping format In Ruby, everything is an object. This is important because where all Web page objects must be captured and saved prior to automate Web applications with Watir, all we have to do is to scripting. Another approach is to seek out and use testable identify objects and send them messages. interfaces that are built into Web browser applications and Here’s an example using a string object: provide the ability to directly access the objects on the page as they appear in the Web browser. irb> "watir".reverse In the case of Internet Explorer, there is a published, main- => "ritaw" tained testable interface in the form of the Component Object Model (COM) interface.
    [Show full text]
  • Making Test Automation Work in Agile Projects
    Making Test Automation Work in Agile Projects Agile Testing Days 2010 Lisa Crispin With Material from Janet Gregory 1 Introduction - Me . Programming background . Test automation from mid-90s . Agile from 2000 . Many new automation possibilities! 2 Copyright 2010: Lisa Crispin Introduction - You . Main role on team? . Programming, automation experience? . Using agile approach? . Current level of automation? (Test, CI,deployment, IDEs, SCCS...) 3 Copyright 2010: Lisa Crispin Takeaways Foundation for successful test automation . “Whole Team” approach . When to automate . Apply agile principles, practices . Good test design principles . Identifying, overcoming barriers . Choosing, implementing tools . First steps We won’t do any hands-on automation, but will work through some examples together 4 Copyright 2010: Lisa Crispin Why Automate? . Free up time for most important work . Repeatable . Safety net . Quick feedback . Help drive coding . Tests provide documentation 5 Copyright 2010: Lisa Crispin Barriers to Test Automation What’s holding you back? 6 Copyright 2010: Lisa Crispin Pain and Fear . Programmers don’t feel manual test pain . Testers treated as safety net . Fear . Programmers lack testing skills . Testers lack programming skills 7 Copyright 2010: Lisa Crispin Initial Investment . Hump of pain . Legacy code, changing code . Tools, infrastructure, time Effort Effort Time Copyright 2010: Lisa Crispin It’s Worth It . ROI – explain to management . “Present value” of automated tests . Acknowledge hump of pain 9 Copyright 2010: Lisa Crispin Economics of Test Design . Poor test practices/design = poor ROI . Tests had to understand, maintain . Good test practices/design = good ROI . Simple, well-designed, refactored tests 10 Copyright 2010: Lisa Crispin Exercise – What’s holding YOU back? .
    [Show full text]
  • Ruby and Watir: Your New Test Automation Tools
    BIO PRESENTATION W8 10/18/2006 1:45:00 PM RUBY AND WATIR: YOUR NEW TEST AUTOMATION TOOLS Kalen Howell LexisNexis International Conference on Software Testing Analysis and Review October 16-20, 2006 Anaheim, CA USA Kalen Howell Kalen Howell is a Senior Software Test Analyst with LexisNexis® in Miamisburg, OH. For the past 4 ½ years Kalen has been part of the automation team supporting a number of applications and internal tools. Most recently Kalen has been a part of an Agile Development Team providing functional and automation test support. His technology background includes providing workstation and server support, programming in various languages and testing of web based and database applications. Kalen holds a B.S. in Information Technology from Wilberforce University and is currently working on his M.S. in Computer Science at Franklin University. Ruby and WATIR: Your New Test Automation Tool By Kalen Howell LexisNexis 1of 30 StarWest 2006 Agenda • How I discovered Ruby/Watir • An introduction to a scripting language called Ruby • An introduction to a Ruby library called WATIR • Examples of exploring Ruby/Watir features using IRB • Eclipse and other IDEs • Summary 2of 30 StarWest 2006 Discovery of Ruby/Watir • Change - From Waterfall to Agile • In search of Open Source Automation Tools • StarWest 2005 - Intro to Ruby/Watir • WATIR User’s Guide • My First Ruby/Watir test cases 3of 30 StarWest 2006 Introducing Ruby • Open source • Purely object oriented • Multithreaded • Interpreted scripting language • Highly portable 4of 30 StarWest
    [Show full text]
  • Choosing the Right Automation Tool
    VIEW POINT CHOOSING THE RIGHT AUTOMATION TOOL AND FRAMEWORK IS CRITICAL TO PROJECT SUCCESS Harsh Bajaj, Technical Test Lead ECSIVS, Infosys Organizations have become cognizant of the crucial role of testing in the software development life cycle and in delivering high quality software products. As the competition in the IT sector grows stiffer, the pressure to deliver larger number of high quality products with fewer resources in limited time is increasing in intensity. During development cycles software tests need to be repeated to ensure quality. Every time the Introduction source code is modified, test cases must be executed. All iterations in the software need to be tested on all browsers and all supported operating systems. Manual execution of test cases is not only a costly and time-consuming exercise, but it is also prone to error. Automation testing addresses these challenges presented by manual testing. Automation tests can be executed multiple times across iterations much faster than manual test cases, saving time as well as cost. Lengthy tests which are often skipped during manual test execution can be executed unattended on multiple machines with different configurations, thus increasing the test coverage. Automation testing helps find defects or issues which are often overlooked during manual testing or are impossible to detect manually – for example, spelling mistakes or hard coding in the application code. Automaton also boosts the confidence of the testing team by automating repetitive tasks and enabling the team to focus on challenging and high risk projects. Team members can improve their skill sets by learning new tools and technologies and pass on the gains to the organization.
    [Show full text]