Testing The JCOP Framework

Slides:



Advertisements
Similar presentations
P.C. Burkimsher Alice DCS Workshop 18 March 2002 (Updated 27 March 2003) PVSS - How to get started Paul Burkimsher IT Division COntrols Group Support Services.
Advertisements

Automating with Open Source Testing Tools Corey McGarrahan rSmart 01-July-08.
Automation Testing Presentation Phil Hunter Phil Hunter - Automation Presentation 1.
Experiment Control Systems at the LHC An Overview of the System Architecture An Overview of the System Architecture JCOP Framework Overview JCOP Framework.
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Scripting Languages. Originally, a script was a file containing a sequence of commands that needed to be executed Control structures were added to make.
COS/PSA 413 Day 17. Agenda Lab 8 write-up grades –3 B’s, 1 C and 1 F –Answer the Questions!!! Capstone progress report 2 overdue Today we will be discussing.
© Prentice Hall CHAPTER 3 Computer Software.
1 DOS with Windows 3.1 and 3.11 Operating Environments n Designed to allow applications to have a graphical interface DOS runs in the background as the.
The Basic Tools Presented by: Robert E., & Jonathan Chase.
Automated Testing Nathan Weiss April 23, Overview History of Testing Advantages to Automated Testing Types of Automated Testing Automated Testing.
© Company Confidentialwww.itcinfotech.com Business Case for Test Automation S.Janardhanan Chief Technology Officer ITC Infotech India Limited Business.
Lesson 6 Operating Systems and Software
1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program.
Sikuli Ivailo Dinkov QA Engineer PhoneX Team Telerik QA Academy.
Selenium automated testing in Openbravo ERP Quality Assurance Webinar April 8th, 2010.
Web Page Design I Retest Terms Review. 1. Web pages are created using a language known as ___________. The coding of this language must follow specific.
4 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
JSP Java Server Pages Softsmith Infotech.
Reusability and Effective Test Automation in Telecommunication System Testing Mikael Mattas Supervisor: Professor Sven-Gustav Häggman Instructor: B.Sc.
Python – Part 1 Python Programming Language 1. What is Python? High-level language Interpreted – easy to test and use interactively Object-oriented Open-source.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
Interception and Analysis Framework for Win32 Scripts (not for public release) Tim Hollebeek, Ph.D.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
20th September 2004ALICE DCS Meeting1 Overview FW News PVSS News PVSS Scaling Up News Front-end News Questions.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Overview of PVSS 3.6 Oliver Holme IT-CO. 16/11/2006JCOP Project Team Meeting New features in 3.6 New Installer for PVSS on Windows New Qt User Interface.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Testing in Android. Methods Unit Testing Integration Testing System Testing Regression Testing Compatibility Testing Black Box (Functional) White Box.
 Programming - the process of creating computer programs.
PVSS: Windows  Linux. 13th May Outline Current software architecture PVSS on Linux Demo What has to be redone for Linux console Vacuum, GCS, cryogenics.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Tools for Automated Testing Presented by: Žygimantas Mockus.
12-Jun-16 Event loops. 2 Programming in prehistoric times Earliest programs were all “batch” processing There was no interaction with the user Input Output.
Presented By Sushil K. Chaturvedi Assistant Professor SRCEM,Banmore 1.
Arklio Studija 2007 File: / / Page 1 Automated web application testing using Selenium
Teaching slides Chapter 6. Chapter 6 Software user interface design & construction Contents Introduction Graphical user interface – Rich window based.
QA Process within OEM Services Ethan Chang QA Engineer OEM Service, Canonical
Software Testing Training Online. Software testing is ruling the software business in current scenario. It provides an objective, independent view of.
Section 10.1 Define scripting
Python Programming Unit -1.
Development Environment
CST 1101 Problem Solving Using Computers
Unit Testing.
Leverage your Business with Selenium Automation Testing
Useful Tools for Testing
Testing with Selenium IDE
PERL.
Viewbiquity HTML5 Tom Shafron Developer’s Blog CEO, Viewbiquity
Computer Software Lecture 5.
Event loops 16-Jun-18.
Application with Cross-Platform GUI
PHP / MySQL Introduction
What is an operating system?
Applied Software Implementation & Testing
Electronic Review Process
Chapter 2: System Structures
CIS16 Application Development – Programming with Visual Basic
Event loops.
Content of Presentation
Event loops 17-Jan-19.
Event loops 17-Jan-19.
CS 240 – Advanced Programming Concepts
Event loops 8-Apr-19.
Event loops.
February 16th, 2004 Class Meeting 5
Event loops.
Event loops 19-Aug-19.
The Heartbleed Bug and Attack
Presentation transcript:

Testing The JCOP Framework Paul Burkimsher October 2010

What is the JCOP Framework? You should know that by now… ;-) It’s been around a while but is of course being maintained. The problem with maintenance is you can fix one bug and introduce another. Same for upgrading… => Need for Regression testing Does the original bit still work like it did yesterday?

Regression testing Is boring, repeating the same tests every day so we automate it. We have taken a very top-down approach. We pretend to be a user clicking on buttons, manipulating the DEN, declaring devices… We write Python programs which fire up PVSS panels, press buttons, type in field values…

Write Python programs which fire up PVSS panel and press buttons, type in field values…

How do we do it? Use a GUI testing tool called “Squish” from a German company. We chose Squish because ETM chose Squish for their own GUI testing…

Squish is powerful I agree with the salesman  : It is flexible You can run Squish on Windows and test Fw components also running on Windows or Fw components running remotely on Linux It supports several programming languages. I chose to use Python (I’m not a Java, Perl or Tcl fan) It is easy to use You can record mouse movements and keystrokes to get your initial scripts

Powerful, but Squish itself is being developed intensively Not ever so stable (presumably they test it :-P ) PVSS is changing underneath. ETM try very hard to keep the look and feel the same, but their implementation underneath changes  If the computer clicks on qt_go button and its name changes to qt_start, you’re screwed. Qt is changing underneath (and PVSS is built on top of Qt) … a lot of running fast to just stay still 

How does it work? I defined a sequence of Test Suites (Python programs): suite_createCleanPut (“ProjectUnderTest”) suite_installFwInstallationTool suite_installFwComponents suite_exerciseAnalogDigitalComponent suite_exercise CaenComponent tst_createCrateSy127; tst_createCrateSy403 tst_createCrateSy527; tst_createCrateSy2525 suite_exerciseWienerComponent suite_exerciseTrendEditorNavigator

How does it work – II ? AUT (Application Under Test) uses Qt Network Background Python Script or Python Script in IDE Special qt.dll get interpreted by Squish Runner (interpreter - client) Squish server

How do you know its worked?

It gets to the end without breaking? You can put assertions in the Python code You can inspect the output

What is the output of the DEN? DPs and hence .dpl files We compare the produced .dpl file with an “expected” .dpl file. NB You have to remove the timestamps and Dp Ids from the .dpls first.

How do we communicate results? Produce log files at every stage. Squish produces an XML summary of the assertion results (and provides an html translator) We create an email with this info and send it to all the JCOP authors whose components are being tested

Nightly email

Email (cont)

Further work More tests More software version combinations (PVSS 3.9 etc) Fully automate the test across to Linux Code coverage in the scripts

Questions ?