Features/en

Aus expecco Wiki (Version 2.x)
Zur Navigation springen Zur Suche springen

Concept & Key Features[Bearbeiten]

The basic philosophy of expecco is that test procedures can be created, maintained and executed by developers and programmers, as well as by domain experts and analysts without any special programming knowledge. In addition, experienced users can create their own code, scripts and extended functions.

In order to meet both requirements, processes in expecco can be defined as activity diagrams as well as script code in different programming languages. This enables a "Best of both Worlds" approach: Non-programmers can create complex scenarios on a high level of abstraction via "Drag & Drop" or recording of GUI actions. Programmers can create missing function blocks as script code and make them available as action blocks for other actions.

expecco has a modular structure - the basic system can be extended at any time by plugins and adapted to your individual needs. The special feature of expecco is that for the first time various technologies can be consistently combined in a complete test scenario. This system allows you to check even highly complex, networked applications for weak points in a single test run at an early stage. expecco already contains all elements you need for efficient test automation. You can extend the basic system with the suitable plugins depending on the project status and your individual requirements. Each supported technology has fully programmed libraries and directly executable function blocks.

Expecco as Orchestrator[Bearbeiten]

Expecco makes it easy to incorporate existing frameworks written in different programming languages into a seamless integrated scenario. Existing code written in Java, JavaScript, Python, C#, C, C++ and others can be called with a minimum amount of "glue" code. Also binary only libraries available as binary object files, jars or .NET assemblies are easily integrated.

Basic System[Bearbeiten]

  • expecco IDE
  • Libraries - StandardLib, ODBC, XML and more
  • Ports & Protocols - seriell/USB/parallel, HTTP, TCP/IP etc.
  • Connections - DLL, .CSV, etc.
  • Databases: relational DBs via ODBC and SQLite
  • NoSQL dataases: cassandra, couchDB, minneStore, mongoDB, redis
  • Web Services - REST, SOAP, RPC
  • Web Test - Webdriver, HTML5, Smart GWT
  • Java Bridge - JavaBridge execute Java Code as well as Code Injection into Java Programs
  • .NET Bridge - interface to / execute DotNET Code
  • Python Bridge - interface to / execute Python Code
  • Node.js Bridge - interface to / execute NodeJS JavaScript Code
  • C Bridge - interface to / execute C/C++ Code
  • Manual and Semiautomated Tests (i.e. manual actions guided by expecco)

Features:

  • Extensive standard libraries
  • Integrated recorder
  • Graphical test development via drag&drop
  • Directly executable graphical model
  • Loading and saving test suites
  • Create, edit, and maintain execution definitions
  • Test execution
  • Test development with single step, breakpoints, execution of partial sequences
  • Test development with "Live changes while the system runs"
  • High (diagram) and low (script/code) level debugging
  • Observation of execution, collection of trace, time and log data
  • Collection of all data flows, message packages and intermediate results for later inspection
  • Report generation as human- and machine-readable documents in different formats
  • Test descriptions are interpreted immediately, the test sequence is displayed in detail and animated live
  • Running tests can be paused, executed in single-step mode and modified and continued during the run
  • Flexible parameterization
  • Linear and parallel test sequences
  • Test procedures adapt dynamically to changed configurations
  • Clearly defined interfaces ensure that product changes and enhancements only need to be maintained at one point
  • Integrated version management ensures consistent data management
  • High re-usability of test sequences from component test to acceptance test
  • Import/Export of specifications
  • Platform independent (available for Windows, Linux and OSX)

GUI Test[Bearbeiten]

  • Java (Swing, SWT, FX)
  • Microsoft UIA2, UIA3 (Ui Automation)
  • .NET (MFC, Forms, Dev Express)
  • Qt
  • VisualWorks GUIs
  • VNC, local screen

expecco offers several ways to identify GUI elements:

  • Unique IDs
  • Unique Text
  • Element Paths and Index (XPath)
  • Image recognition
  • Absolute or relative position

Features:

  • Seamless integration into the expecco user interface
  • A common tool for different UI technologies
  • Simultaneous automation/test of several applications (possibly in different UI technologies)
  • Visualization of the structure of the user interface (component structure)
  • Information on various states and properties of the individual control elements
  • Support in finding controls through highlighting, thumbnails and mouse-over feedback
  • Filtering of suitable action blocks from the block library depending on the respective UI technology
  • Creation of test sequences using "Drag and Drop" and/or automatic recording
  • Experimental testing of blocks, test sequences and control element paths
  • Transfer of test sequences into the test project

Web Test[Bearbeiten]

  • Selenium Webdriver
  • HTML5, Smart GWT
  • Chrome, Firefox, Edge, Internet Explorer, Opera and others

Features:

  • Playback/test run on all popular browsers
  • One test can run on all browsers
  • Tests can run "headless”
  • Testing of Windows and Linux applications in different browsers
  • Convenient combination of new action blocks with user interactions
  • Easy parameterization of web forms and automatic creation of CSV tables with input values
  • Combination of UI tests with other systems, measuring instruments, sensors, databases, mobile devices, etc.
  • Measurement of response times
  • Rerecording of partial sequences without having to repeat the entire session again
  • High re-usability of partial sequences by refactoring common actions (e.g. login sequences, form entries, table checks etc.)
  • Load generation and performance measurements
  • Our webtest plugin is based on Selenium WebDriver

Mobile Test[Bearbeiten]

  • Android, iOS

Features:

  • No jailbreak required
  • Recording – comfortable test creation with integrated recorder
  • Remote control - control of the devices independent of location
  • One master test – executable on all devices (Android and iOS) and emulators
  • Remote access to multiple mobile phones
  • Parallel automation of or test execution on several devices
  • Communication with external hardware (interfaces e.g. Bluetooth, NFC, WIFI, LTE, field bus, backends)
  • Access to objects in the application context
  • Complex scenarios – the test execution is not only rigidly linear, but also reaction of the test procedure to preconditions and state changes of the app is possible
  • Parameterization – input values and devices can be easily exchanged
  • Automation – Apps are automatically installed at the beginning of the test and uninstalled at the end
  • Function Libraries – executable function blocks are included – for rapid test development re-usability – test steps can be reused for further tests
  • Element tree can be inspected – the position of the control elements is visible, the properties can be viewed
  • Detailed reporting

Embedded Systems Test[Bearbeiten]

  • CAN, CANoe, CANAnalyzer, MOST,
  • MQTT, SomeIP, USB,
  • WSDL, REST, Remote Access,
  • VNC Client, SCP-Filetransfer, etc.

Features:

  • expecco used as a supervising (orchestrating) test tool
  • Access to the COM Server implemented by CANoe and CANalyzer
  • External control of applications
  • expecco reads the CANoe project and saves all variables in a CSV file
  • Modeling the test procedure
  • Once modeled test sequences can be used for different ECUs
  • Automated loading of variables
  • Tests can be parameterized (different values can be selected in 1 test run)
  • Dynamic (parallel) test runs
  • Variants: Generic test cases for ECU variants can be defined
  • Cross-technology tests: Integration of more programs and devices into the test sequence: (CANoe/ Optolyzer/ Mobile Devices in 1 test sequence)
  • Test automation independent of the test environment (such as CANoe, National Instruments, dSpace)

Measurement Devices, Simulators, Interfaces[Bearbeiten]

  • PCAN, CANUSB, Profibus, Vector Hardware Interfaces,
  • REST, SOAP, XML-RPC, http, https, SNMP, TELNET,
  • TCP/IP, UDP, SSH, (S)FTP, DLL Calls, VISA, GPIB, SCPI, OPCUA, Siemens S7, MQTT, SomeIP, Edifact

Features:

  • Direct control of hardware interfaces and bus systems
  • Direct control of applications to control embedded systems
  • Analog inputs and outputs
  • Various interfaces enable End-to-End tests
  • Dynamic import of information at runtime
  • Tests are automatically adapted to changes in the system under test

SAP[Bearbeiten]

Features:

  • Mapping and testing of real business processes
  • Connection to SAP GUI via eCATT
  • Connection with several UIs possible at the same time

Report[Bearbeiten]

Features:

  • Revision-proof test documentation
  • Automatic report after each test run
  • Individual reports with different levels of detail can be generated
  • Adaptable to your own layout
  • Add attachments, screenshots, images or documents
  • Content, language and look can be adapted to the target group
  • All output formats possible: PDF, HTML, XML, CSV, text, etc.
  • expecco logfile with all expiration dates, executable again

QM Interfaces[Bearbeiten]

Connection to existing test and quality management systems
  • Remote control of expecco via SOAP/REST or Telnet

Expecco Automation[Bearbeiten]

  • reflection library (to automate expecco itself)
  • automatic generation of test suites from specs (eg. in a database)
  • automatic execution of tests and post processing of execution logs



Copyright © 2014-2024 eXept Software AG