This document discusses testing automation from start to finish. It covers topics like realizing when automation is needed, defining development processes, script quality, frameworks, execution processes, and team management. The overarching goal of automation is to generate accurate testing reports. Key points include spending time on API design, following coding standards for scripts, determining if a framework is required, managing parallel execution and reports, and defining roles for test writers, scripters, and runners.
Automation framework design and implementationgaoliang641
The document discusses the need for automation frameworks to increase productivity and avoid errors in repetitive testing. It covers key elements of frameworks like control libraries, common libraries, coding guidelines, execution engines and result databases. Design principles include code control, abstract library layers, independent scripts and test beds, resource allocation and parallel execution. Implementation considerations involve choosing scripting languages and optimizing performance. Popular frameworks from various companies are examined as case studies.
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...manssandstrom
This document discusses strategies for integrating work from multiple Scrum teams. It outlines the role of an integration team in continuously integrating work. Key success factors for the integration team include: integrating work early, having the necessary resources and environments, practicing continuous integration, using automated tests, maintaining at least two test environments, performing early performance tests, stopping work if integration breaks, having a clear contract between development and integration teams, making the integration process and status visible.
The Bajaj Group is one of India's largest business conglomerates. It was founded in 1926 by Jamnalal Bajaj and has grown to include over 25 companies. Key facts about the group include:
- It was started as a sugar manufacturing company and has since diversified into various industries like automobiles, home appliances, insurance, etc.
- Some major companies within the group include Bajaj Auto, Bajaj Electricals, Bajaj Allianz General Insurance.
- The group prides itself on its core values of trust and integrity established by its founding fathers over many decades of operations.
- It is currently led by Rahul Bajaj and employs
LEAN AND SIX SIGMA MANUFACTURING
PRACTICES
THROUGH
INFORMATION AND COMMUNICATION TECHNOLOGY
Two day Training programme
5th and 6th may 2007
ORGANIZED BY
SQC & OR UNIT
INDIAN STATISTICAL INSTITUTE,
COIMBATORE
Faculty:
Prof. A. Rajagopal,
HEAD, SQC&OR unit
INDIAN STATISTICAL INSTITUTE
Coimbatore-43
Ph: 0422-2441192
Mob: 98422 45219
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Amazon Web Services
The document discusses Amazon EC2 F1 instances for accelerating C/C++ applications using FPGAs. It provides an overview of F1 instances and capabilities like packet processing and multiple AFIs. Updates include more regions, sizes, and tools. Examples demonstrate financial computing, genomics, and video acceleration. The workshop will use precompiled AFIs and F1.2xlarge instances to introduce FPGA development.
Amazon EC2 deepdive and a sprinkel of AWS Compute | AWS Floor28Amazon Web Services
The document discusses an upcoming AWS event called "AMAZON EC2 DEEPDIVE AND A SPRINKLE OF AWS COMPUTE" presented by Doron Rogov. The event agenda lists technical sessions on various AWS topics occurring from October 14-23. The presentation will cover choosing Amazon EC2 instances, how performance is characterized for different workloads, how EC2 instances provide flexibility and agility while delivering performance, and how to optimize the EC2 instance experience through various instance types.
Labview1_ Computer Applications in Control_ACRRLMohammad Sabouri
Computer Applications in Control
ACRRL
Applied Control & Robotics Research Laboratory of Shiraz University
Department of Power and Control Engineering, Shiraz University, Fars, Iran.
Instructor: Dr. Asemani
TA: Mohammad Sabouri
https://sites.google.com/view/acrrl/
Automation framework design and implementationgaoliang641
The document discusses the need for automation frameworks to increase productivity and avoid errors in repetitive testing. It covers key elements of frameworks like control libraries, common libraries, coding guidelines, execution engines and result databases. Design principles include code control, abstract library layers, independent scripts and test beds, resource allocation and parallel execution. Implementation considerations involve choosing scripting languages and optimizing performance. Popular frameworks from various companies are examined as case studies.
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...manssandstrom
This document discusses strategies for integrating work from multiple Scrum teams. It outlines the role of an integration team in continuously integrating work. Key success factors for the integration team include: integrating work early, having the necessary resources and environments, practicing continuous integration, using automated tests, maintaining at least two test environments, performing early performance tests, stopping work if integration breaks, having a clear contract between development and integration teams, making the integration process and status visible.
The Bajaj Group is one of India's largest business conglomerates. It was founded in 1926 by Jamnalal Bajaj and has grown to include over 25 companies. Key facts about the group include:
- It was started as a sugar manufacturing company and has since diversified into various industries like automobiles, home appliances, insurance, etc.
- Some major companies within the group include Bajaj Auto, Bajaj Electricals, Bajaj Allianz General Insurance.
- The group prides itself on its core values of trust and integrity established by its founding fathers over many decades of operations.
- It is currently led by Rahul Bajaj and employs
LEAN AND SIX SIGMA MANUFACTURING
PRACTICES
THROUGH
INFORMATION AND COMMUNICATION TECHNOLOGY
Two day Training programme
5th and 6th may 2007
ORGANIZED BY
SQC & OR UNIT
INDIAN STATISTICAL INSTITUTE,
COIMBATORE
Faculty:
Prof. A. Rajagopal,
HEAD, SQC&OR unit
INDIAN STATISTICAL INSTITUTE
Coimbatore-43
Ph: 0422-2441192
Mob: 98422 45219
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Amazon Web Services
The document discusses Amazon EC2 F1 instances for accelerating C/C++ applications using FPGAs. It provides an overview of F1 instances and capabilities like packet processing and multiple AFIs. Updates include more regions, sizes, and tools. Examples demonstrate financial computing, genomics, and video acceleration. The workshop will use precompiled AFIs and F1.2xlarge instances to introduce FPGA development.
Amazon EC2 deepdive and a sprinkel of AWS Compute | AWS Floor28Amazon Web Services
The document discusses an upcoming AWS event called "AMAZON EC2 DEEPDIVE AND A SPRINKLE OF AWS COMPUTE" presented by Doron Rogov. The event agenda lists technical sessions on various AWS topics occurring from October 14-23. The presentation will cover choosing Amazon EC2 instances, how performance is characterized for different workloads, how EC2 instances provide flexibility and agility while delivering performance, and how to optimize the EC2 instance experience through various instance types.
Labview1_ Computer Applications in Control_ACRRLMohammad Sabouri
Computer Applications in Control
ACRRL
Applied Control & Robotics Research Laboratory of Shiraz University
Department of Power and Control Engineering, Shiraz University, Fars, Iran.
Instructor: Dr. Asemani
TA: Mohammad Sabouri
https://sites.google.com/view/acrrl/
Advanced technologies and techniques for debugging HPC applicationsRogue Wave Software
Presented at Supercomputing 18. Debugging and analyzing today's HPC applications requires a tool with capabilities and features to support the demands of today’s complex HPC applications. Debugging tools must be able to handle the extensive use of C++ templates and the STL, use of many shared libraries, optimized code, code leveraging GPU accelerators and applications constructed with multiple languages.
This presentation walks through the different advanced technologies provided by the debugger, TotalView for HPC, and shows how they can be used to easily understand complex code and quickly solve difficult problems. Showcasing TotalView’s new user interface, you will learn how to leverage the amazing technology of reverse debugging to replay how your program ran. You will also see how TotalView provides a unified view across applications that utilize Python and C++, debug CUDA applications, find memory leaks in your HPC codes and other powerful techniques for improving the quality of your code.
Getting Space Pirate Trainer* to Perform on Intel® GraphicsIntel® Software
The document discusses optimizations made to the VR game Space Pirate Trainer to improve performance when running on Intel graphics. Through tools like Intel GPA, optimizations were identified including simplifying shaders, removing dynamic lights and post-processing effects, lowering resolution and upscaling, and improving rendering order. These changes resulted in performance increasing from 12 FPS to 60 FPS, allowing the game to run well on mainstream PCs with Intel graphics.
This document discusses programmable infrastructure using FlyScript. It provides examples of how FlyScript allows customers to programmatically control Riverbed products like Stingray Traffic Manager to meet unique needs. FlyScript provides REST APIs, SDKs, and TrafficScript to enable custom integrations and control. This allows pulling data from multiple sources and pushing configurations to multiple targets for seamless cross-product integration.
iSYSTEM Company and Product Overview v12.02iSYSTEM AG
iSYSTEM specializes in embedded development and test tools.
We provide debugger and analyzer solutions for more than 50 CPU architectures and their derivatives (2500+ microcontrollers). The Windows and/or Eclipse based development environment (winIDEA) is easy to learn and use. The flexible integration and application of iSYSTEM solutions within the entire development process is enabled by open and public interfaces (APIs).
This document compares the functional testing tools WinRunner and QuickTest Professional from Mercury. It outlines that both tools can test common environments like web, Java, and Windows applications, but that QuickTest Professional has additional support for .NET and SAP environments. The document recommends QuickTest Professional over WinRunner, as it has an easier interface, supports more powerful and common scripting languages, and provides more out-of-the-box features that make test automation simpler.
QTP supports functional testing of different environments like Windows, web, and .NET. It uses VBScript for scripting and allows normal, analog, and low-level recording. Tests in QTP can be run in normal or fast mode and utilize checkpoints for verification. Key aspects include the test object model, synchronization, and the expert view interface.
Automated Testing for Embedded Software in C or C++Lars Thorup
This document discusses automated testing for embedded C software. It introduces Lars Thorup and provides an agenda for the document. It then defines automated testing, describes the Unity testing framework for embedded C, and provides an example of how to handle dependencies in testing. It advocates for continuous integration, breaking dependencies through abstraction and injection, and explains how automated testing can improve software quality through faster development and preventing bugs.
This document discusses code quality and testing tools from Micro Focus including DevPartner Studio, SilkTest, and Silk Central Test Manager. It summarizes the capabilities of these tools such as source code review, security scanning, debugging, performance analysis, test automation, requirements management, and deployment. The document emphasizes that these tools can help achieve better software faster through a proactive approach to continuous integration, testing, and analysis.
Movable Type 5.2 Overview at MTDDC 2012Yuji Takayama
The document provides an overview of new features in Movable Type 5.2 from the perspective of a software engineer. Key new features include a rich text editor, ability for system administrators to restrict publishing paths, SMTP authentication, an upgraded tools interface, and support for running Movable Type on cloud platforms. It also discusses upgrades to the mail sending backend to support SSL/TLS, submision ports, and debugging. Additional sections cover implementing a PSGI interface for Movable Type to support pluggable web servers and reloading of configurations.
The document provides an overview of QuickTest Professional (QTP), including:
1. QTP is a tool used for functional and regression testing of applications. It supports testing of various software using built-in and external add-ins.
2. The object repository in QTP stores object identification properties that are used to recognize and interact with objects during testing.
3. Tests in QTP can include multiple actions, which can be arranged hierarchically. Data tables are used to support data-driven testing by storing test and action iteration data.
LAS16-201: ART JIT in Android N
Speakers: Xueliang Zhong
Date: September 27, 2016
★ Session Description ★
Android runtime (ART) has evolved from an AOT compiler (in Android L & M) to a hybrid mode runtime (in Android N) which combines fast interpreter, JIT compiler and profile guided AOT compiler. In this talk, we’ll take a look at all these important changes in Android N. For example, the design and implementation of JIT, hybrid mode, tooling support, etc. This talk is meant to help Linaro members and developers to have a deeper understanding of ART in Android N, and to help them face the challenges of the new behaviors of Android runtime.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-201
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-201/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
LF_DPDK17_rte_raw_device: implementing programmable accelerators using generi...LF_DPDK
Hemant Agrawal and Shreyansh Jain of NXP presented on implementing a generic "rawdevice" in DPDK to provide a uniform programming interface for accelerators and programmable devices. A rawdevice would allow any non-standard device to integrate with DPDK through common APIs for configuration, queue management, and data transfer without requiring a customized library for each new device type. The presentation provided motivation, definitions, and an example usage of layering a wireless baseband device driver on top of the proposed rawdevice interface.
Performance Co-Pilot (PCP) is a system-level performance monitoring toolkit that provides services for collecting, monitoring, and analyzing system metrics. It has a distributed architecture that allows monitoring of local and remote nodes. PCP includes tools like pmlogger to capture metrics, pmstat for high-level monitoring, and pmchart for graphical monitoring. It works by collecting metrics via agents and exporting them to tools via PMCD. Admins can use PCP to detect performance issues, monitor specific metrics over time, and analyze the effects of system changes.
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Martin Spier
Netflix accounts for more than a third of all traffic heading into American homes at peak hours. Making sure users are getting the best possible experience at all times is no simple feat and performance is at the core of this experience. In order to ensure performance and maintain development agility in a highly decentralized environment/(organization?), Netflix employs a multitude of strategies, such as production canary analysis, fully automated performance tests, simple zero-downtime deployments and rollbacks, auto-scaling clusters and a fault-tolerant stateless service architecture. We will present a set of use cases that demonstrate how and why different groups employ different strategies to achieve a common goal, great performance and stability, and detail how these strategies are incorporated into development, test and DevOps with minimal overhead.
Architecture for Massively Parallel HDL Simulations DVClub
This document describes Art of Silicon's architecture for massively parallel HDL simulations using Verilator. It allows running many simulations concurrently by generating a single testbench that can run on both Verilator and event-driven simulators. Identical C++ stimulus and checking code interfaces with the design through "gaskets". Logs are captured in a unified format across platforms for easy triage. This approach maximizes engineer productivity by minimizing idle simulation time.
Hands-On: Deploy Remote Graphics Desktops for Content Production (CMP422) - A...Amazon Web Services
What if you could short-circuit the ever-growing challenge of data and content synchronization or the continued maintenance of an aging physical footprint of graphics desktop infrastructure? Traditionally, companies requiring high-quality graphic desktops for their users are required to invest heavily in on-premises infrastructure. Media and entertainment customers continue to develop hybrid (on-premises to cloud) rendering as well as supply chain pipelines. Companies have leveraged cloud compute elasticity and economies of scale to deliver projects on time and under budget, but what about the user desktops? Enable on-demand "graphics and video editing" users on the desktop as easily as burst EC2 cloud compute. Hire the best talent, regardless of location or time zone, while only streaming secure pixels to a user's desktop. In this hands-on session, attendees explore the technical schema and underlying architecture of this solution and then individually build a working Windows and Linux graphics desktop based on the NVIDIA powered G3 EC2 instance type. All attendees must bring their own laptop (Windows and macOS are supported). Tablets are not appropriate. We also recommend having the current version of Chrome or Firefox and the AWS CLI already installed.
Enhanced Enterprise Intelligence with your personal AI Data Copilot.pdfGetInData
Recently we have observed the rise of open-source Large Language Models (LLMs) that are community-driven or developed by the AI market leaders, such as Meta (Llama3), Databricks (DBRX) and Snowflake (Arctic). On the other hand, there is a growth in interest in specialized, carefully fine-tuned yet relatively small models that can efficiently assist programmers in day-to-day tasks. Finally, Retrieval-Augmented Generation (RAG) architectures have gained a lot of traction as the preferred approach for LLMs context and prompt augmentation for building conversational SQL data copilots, code copilots and chatbots.
In this presentation, we will show how we built upon these three concepts a robust Data Copilot that can help to democratize access to company data assets and boost performance of everyone working with data platforms.
Why do we need yet another (open-source ) Copilot?
How can we build one?
Architecture and evaluation
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"LogeekNightUkraine
This document discusses macro vs micro benchmarking in .NET. It defines macro benchmarking as measuring the performance of whole applications or parts of applications from a user's perspective, while micro benchmarking involves repeatable measurement of specific sections of code isolated from virtual machine effects. The document also covers topics like when optimization is needed, profiling tools available for .NET like dotTrace and dotMemory, and concludes that profiling can help identify performance bottlenecks and memory leaks, and forecast potential performance gains.
This document discusses several bugs found in various networking devices and products. For each bug, it provides details about the issue and asks how test cases could be designed to catch the bug, why it was not caught internally, and what test strategies could cover it. It aims to analyze customer-found bugs to improve testing methods.
Why we didn't catch that application bugsgaoliang641
The document discusses 30 different software bugs found in various systems. For each bug, it provides a brief description of the issue and asks how test cases could be designed to catch the bug, why it was not caught internally, and what test strategies could help cover such bugs in the future. The bugs covered a wide range of systems, including WebEx, Taobao, Google Docs, Cisco devices, banking systems, travel sites, Microsoft Office, and more.
Advanced technologies and techniques for debugging HPC applicationsRogue Wave Software
Presented at Supercomputing 18. Debugging and analyzing today's HPC applications requires a tool with capabilities and features to support the demands of today’s complex HPC applications. Debugging tools must be able to handle the extensive use of C++ templates and the STL, use of many shared libraries, optimized code, code leveraging GPU accelerators and applications constructed with multiple languages.
This presentation walks through the different advanced technologies provided by the debugger, TotalView for HPC, and shows how they can be used to easily understand complex code and quickly solve difficult problems. Showcasing TotalView’s new user interface, you will learn how to leverage the amazing technology of reverse debugging to replay how your program ran. You will also see how TotalView provides a unified view across applications that utilize Python and C++, debug CUDA applications, find memory leaks in your HPC codes and other powerful techniques for improving the quality of your code.
Getting Space Pirate Trainer* to Perform on Intel® GraphicsIntel® Software
The document discusses optimizations made to the VR game Space Pirate Trainer to improve performance when running on Intel graphics. Through tools like Intel GPA, optimizations were identified including simplifying shaders, removing dynamic lights and post-processing effects, lowering resolution and upscaling, and improving rendering order. These changes resulted in performance increasing from 12 FPS to 60 FPS, allowing the game to run well on mainstream PCs with Intel graphics.
This document discusses programmable infrastructure using FlyScript. It provides examples of how FlyScript allows customers to programmatically control Riverbed products like Stingray Traffic Manager to meet unique needs. FlyScript provides REST APIs, SDKs, and TrafficScript to enable custom integrations and control. This allows pulling data from multiple sources and pushing configurations to multiple targets for seamless cross-product integration.
iSYSTEM Company and Product Overview v12.02iSYSTEM AG
iSYSTEM specializes in embedded development and test tools.
We provide debugger and analyzer solutions for more than 50 CPU architectures and their derivatives (2500+ microcontrollers). The Windows and/or Eclipse based development environment (winIDEA) is easy to learn and use. The flexible integration and application of iSYSTEM solutions within the entire development process is enabled by open and public interfaces (APIs).
This document compares the functional testing tools WinRunner and QuickTest Professional from Mercury. It outlines that both tools can test common environments like web, Java, and Windows applications, but that QuickTest Professional has additional support for .NET and SAP environments. The document recommends QuickTest Professional over WinRunner, as it has an easier interface, supports more powerful and common scripting languages, and provides more out-of-the-box features that make test automation simpler.
QTP supports functional testing of different environments like Windows, web, and .NET. It uses VBScript for scripting and allows normal, analog, and low-level recording. Tests in QTP can be run in normal or fast mode and utilize checkpoints for verification. Key aspects include the test object model, synchronization, and the expert view interface.
Automated Testing for Embedded Software in C or C++Lars Thorup
This document discusses automated testing for embedded C software. It introduces Lars Thorup and provides an agenda for the document. It then defines automated testing, describes the Unity testing framework for embedded C, and provides an example of how to handle dependencies in testing. It advocates for continuous integration, breaking dependencies through abstraction and injection, and explains how automated testing can improve software quality through faster development and preventing bugs.
This document discusses code quality and testing tools from Micro Focus including DevPartner Studio, SilkTest, and Silk Central Test Manager. It summarizes the capabilities of these tools such as source code review, security scanning, debugging, performance analysis, test automation, requirements management, and deployment. The document emphasizes that these tools can help achieve better software faster through a proactive approach to continuous integration, testing, and analysis.
Movable Type 5.2 Overview at MTDDC 2012Yuji Takayama
The document provides an overview of new features in Movable Type 5.2 from the perspective of a software engineer. Key new features include a rich text editor, ability for system administrators to restrict publishing paths, SMTP authentication, an upgraded tools interface, and support for running Movable Type on cloud platforms. It also discusses upgrades to the mail sending backend to support SSL/TLS, submision ports, and debugging. Additional sections cover implementing a PSGI interface for Movable Type to support pluggable web servers and reloading of configurations.
The document provides an overview of QuickTest Professional (QTP), including:
1. QTP is a tool used for functional and regression testing of applications. It supports testing of various software using built-in and external add-ins.
2. The object repository in QTP stores object identification properties that are used to recognize and interact with objects during testing.
3. Tests in QTP can include multiple actions, which can be arranged hierarchically. Data tables are used to support data-driven testing by storing test and action iteration data.
LAS16-201: ART JIT in Android N
Speakers: Xueliang Zhong
Date: September 27, 2016
★ Session Description ★
Android runtime (ART) has evolved from an AOT compiler (in Android L & M) to a hybrid mode runtime (in Android N) which combines fast interpreter, JIT compiler and profile guided AOT compiler. In this talk, we’ll take a look at all these important changes in Android N. For example, the design and implementation of JIT, hybrid mode, tooling support, etc. This talk is meant to help Linaro members and developers to have a deeper understanding of ART in Android N, and to help them face the challenges of the new behaviors of Android runtime.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-201
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-201/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
LF_DPDK17_rte_raw_device: implementing programmable accelerators using generi...LF_DPDK
Hemant Agrawal and Shreyansh Jain of NXP presented on implementing a generic "rawdevice" in DPDK to provide a uniform programming interface for accelerators and programmable devices. A rawdevice would allow any non-standard device to integrate with DPDK through common APIs for configuration, queue management, and data transfer without requiring a customized library for each new device type. The presentation provided motivation, definitions, and an example usage of layering a wireless baseband device driver on top of the proposed rawdevice interface.
Performance Co-Pilot (PCP) is a system-level performance monitoring toolkit that provides services for collecting, monitoring, and analyzing system metrics. It has a distributed architecture that allows monitoring of local and remote nodes. PCP includes tools like pmlogger to capture metrics, pmstat for high-level monitoring, and pmchart for graphical monitoring. It works by collecting metrics via agents and exporting them to tools via PMCD. Admins can use PCP to detect performance issues, monitor specific metrics over time, and analyze the effects of system changes.
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Martin Spier
Netflix accounts for more than a third of all traffic heading into American homes at peak hours. Making sure users are getting the best possible experience at all times is no simple feat and performance is at the core of this experience. In order to ensure performance and maintain development agility in a highly decentralized environment/(organization?), Netflix employs a multitude of strategies, such as production canary analysis, fully automated performance tests, simple zero-downtime deployments and rollbacks, auto-scaling clusters and a fault-tolerant stateless service architecture. We will present a set of use cases that demonstrate how and why different groups employ different strategies to achieve a common goal, great performance and stability, and detail how these strategies are incorporated into development, test and DevOps with minimal overhead.
Architecture for Massively Parallel HDL Simulations DVClub
This document describes Art of Silicon's architecture for massively parallel HDL simulations using Verilator. It allows running many simulations concurrently by generating a single testbench that can run on both Verilator and event-driven simulators. Identical C++ stimulus and checking code interfaces with the design through "gaskets". Logs are captured in a unified format across platforms for easy triage. This approach maximizes engineer productivity by minimizing idle simulation time.
Hands-On: Deploy Remote Graphics Desktops for Content Production (CMP422) - A...Amazon Web Services
What if you could short-circuit the ever-growing challenge of data and content synchronization or the continued maintenance of an aging physical footprint of graphics desktop infrastructure? Traditionally, companies requiring high-quality graphic desktops for their users are required to invest heavily in on-premises infrastructure. Media and entertainment customers continue to develop hybrid (on-premises to cloud) rendering as well as supply chain pipelines. Companies have leveraged cloud compute elasticity and economies of scale to deliver projects on time and under budget, but what about the user desktops? Enable on-demand "graphics and video editing" users on the desktop as easily as burst EC2 cloud compute. Hire the best talent, regardless of location or time zone, while only streaming secure pixels to a user's desktop. In this hands-on session, attendees explore the technical schema and underlying architecture of this solution and then individually build a working Windows and Linux graphics desktop based on the NVIDIA powered G3 EC2 instance type. All attendees must bring their own laptop (Windows and macOS are supported). Tablets are not appropriate. We also recommend having the current version of Chrome or Firefox and the AWS CLI already installed.
Enhanced Enterprise Intelligence with your personal AI Data Copilot.pdfGetInData
Recently we have observed the rise of open-source Large Language Models (LLMs) that are community-driven or developed by the AI market leaders, such as Meta (Llama3), Databricks (DBRX) and Snowflake (Arctic). On the other hand, there is a growth in interest in specialized, carefully fine-tuned yet relatively small models that can efficiently assist programmers in day-to-day tasks. Finally, Retrieval-Augmented Generation (RAG) architectures have gained a lot of traction as the preferred approach for LLMs context and prompt augmentation for building conversational SQL data copilots, code copilots and chatbots.
In this presentation, we will show how we built upon these three concepts a robust Data Copilot that can help to democratize access to company data assets and boost performance of everyone working with data platforms.
Why do we need yet another (open-source ) Copilot?
How can we build one?
Architecture and evaluation
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"LogeekNightUkraine
This document discusses macro vs micro benchmarking in .NET. It defines macro benchmarking as measuring the performance of whole applications or parts of applications from a user's perspective, while micro benchmarking involves repeatable measurement of specific sections of code isolated from virtual machine effects. The document also covers topics like when optimization is needed, profiling tools available for .NET like dotTrace and dotMemory, and concludes that profiling can help identify performance bottlenecks and memory leaks, and forecast potential performance gains.
This document discusses several bugs found in various networking devices and products. For each bug, it provides details about the issue and asks how test cases could be designed to catch the bug, why it was not caught internally, and what test strategies could cover it. It aims to analyze customer-found bugs to improve testing methods.
Why we didn't catch that application bugsgaoliang641
The document discusses 30 different software bugs found in various systems. For each bug, it provides a brief description of the issue and asks how test cases could be designed to catch the bug, why it was not caught internally, and what test strategies could help cover such bugs in the future. The bugs covered a wide range of systems, including WebEx, Taobao, Google Docs, Cisco devices, banking systems, travel sites, Microsoft Office, and more.
Release engineering involves managing the delivery of high quality software releases through processes like release planning, branch management, building, testing, and source code control. It aims to make releases predictable and of high quality by facilitating activities such as compiling code, verifying functionality, controlling branching/merging of codelines, and following best practices.
Regression testing is important to ensure new software changes do not break existing functionality. Automating regression testing helps manage the large number of test cases needed and speeds up release cycles. Key aspects of managing regression include establishing a baseline, comparing new results to the baseline, debugging failures efficiently, and automating testing processes to reduce human effort and testing time.
The document discusses system and solution testing. It provides an example of how unit tests that pass can fail during system testing. It defines system testing as testing at a product level to find bugs not discoverable through feature testing. Solution testing is defined as customer-oriented end-to-end application testing. The document outlines some key differences between feature, system, and solution testing and discusses common bugs found through system testing.
This document outlines a performance evaluation framework for testers. It defines attributes of good testers, types of metrics to measure performance, and a quality review process. Performance is measured both quantitatively using metrics like bugs found and test cases run, and qualitatively through reviews of bug and test case quality. Testers are evaluated based on their role, with defined metrics for developers, regression engineers, tools engineers and system testers.
This document discusses the relationship between testers and developers and how to improve interaction between the two roles. It notes that while they sometimes have a "love-hate" relationship as they have different expertise and goals, they ultimately depend on each other to ensure high quality software. The document provides tips for when testers and developers should interact, such as during design, test case reviews, and bug fixing. It also recommends ways to build trust between testers and developers through clear communication and establishing processes for quality control.
This document discusses career paths for testing engineers. It begins by describing a typical interview where the candidate's lack of technical skills is apparent. It then discusses a tester's concerns about their career progression and perceptions of testers. The document outlines stories of individuals who grew their careers in testing over long periods of time, taking on roles such as test automation engineer and testing director. It provides advice on making good career choices by gaining experience in one's current role and waiting for opportunities, rather than changing roles frequently or due to money alone. Specific career paths are suggested such as build master, release engineer, and testing management. The document emphasizes that experience over time strengthens one's position and makes them competitive for career growth.
This document discusses agile testing practices used on a large, mission critical project for the Israeli Air Force's information management system. Key points include:
- The entire project used extreme programming (XP) and involved no separation between development and testing teams. Developers performed all testing and regression.
- Testing was integrated into the development process with testing beginning from the first line of code. The size of tests and functionality developed were equal at each iteration.
- Bugs were prioritized and fixed immediately within each iteration to ensure all work was fully tested before being counted as completed. This approach helped keep the project on track and of high quality.
The document provides guidance for a QA manager's role in project management. It outlines responsibilities like managing the QA team, interacting with other teams, and ensuring work is on time and high quality. It also describes tasks for project planning such as understanding requirements, defining deliverables, scheduling testing activities, and communicating with stakeholders. Standard templates, reviews, reports, and post-mortem analyses are recommended to help manage the quality of the work.
This document discusses exploratory testing (E.T.) and how to effectively implement it. It begins by defining E.T. as simultaneous learning, test design, and execution. It then contrasts E.T. with scripted testing, noting that E.T.'s goal is to find bugs while scripted testing aims to measure coverage. The document provides tips for doing good E.T., such as keeping notes and using different testing styles. It also discusses managing E.T., including using sessions and balancing E.T. with other testing. Lessons learned emphasize the benefits of pair testing and that E.T. requires skilled testers and planning to be successful.
The document provides guidance on best practices for bug filing and management. It discusses how to write high-quality bug reports that are reproducible by developers. It emphasizes the importance of thoroughly documenting steps to reproduce issues and providing all relevant information. The document also covers defect tracking metrics and how they can be used to assess testing progress and product quality.
Lessons learned on localization testinggaoliang641
Localization testing began 25 years ago with Windows. Early localization caused regression issues. Now single worldwide binaries are used with different fonts and keyboards. There are 3 types of localization defects: functionality, usability, and linguistic quality. Usability defects make up 90% of issues. Lessons include checking translation completeness, identifying string locations, considering cultural differences in shortcuts, and testing various resolutions.
Lessons learned on software testing automationgaoliang641
This document outlines 14 lessons learned about automation testing. Key points include that automation requires resources to develop, maintain and run scripts; automated tests can miss bugs if not run manually as well; a framework is needed to manage thousands of scripts; scripts should use standard languages and be data-driven and independent of testbeds; and logs are more important than scripts for debugging failures. Separating script writers from runners and using databases to store results are also advised.
This document provides guidance on how to become a testing expert. It discusses typical interview questions faced by testers and the dilemmas of both testers and management in hiring strong testing candidates. It outlines the career journey of one individual who grew from their first testing role to leadership positions. Key lessons include gaining experience over time and having the ability to find critical bugs quickly. Attributes of a testing expert are developing comprehensive testing strategies and managing the entire release process.
Functionality testing involves developing test cases to test new code based on software function specifications, marketing requirements, and developer code. Test cases are the foundation of quality assurance and should cover equivalence classes, boundary values, decision tables, state transitions, and all pairs to ensure thorough coverage. Quality functionality testing requires understanding the purpose of new features, communicating with developers, thoroughly designing test cases, carefully executing tests, and reviewing results.
Protocol Security Testing best practicegaoliang641
This document discusses different types of boundary value testing for protocol parsing code, including:
1. Value boundary testing to ensure proper functionality at the minimum, maximum, and boundary values of input data.
2. Logic boundary testing to check error handling and protocol parsing.
3. Performance boundary testing to evaluate how a system performs under attack.
It describes creating test cases with boundary values for individual fields and combinations of fields in protocol data units. It also discusses challenges of boundary testing due to the large number of possible field combinations and proposes structured and unstructured approaches.
Backward thinking design qa system for quality goalsgaoliang641
This document discusses strategies for designing a quality assurance system to meet quality goals. It outlines various types of testing, such as user testing, integration testing, and performance testing. It also poses many questions about testing organization, processes, tools, and metrics that need to be considered when setting up a QA system. The document emphasizes establishing repetitive regression testing to stabilize code branches before release and using automation to help reduce the workload of testing.
This document discusses agile testing practices used for a large, mission critical project for the Israeli Air Force. Key points include:
- The entire project used extreme programming (XP) and involved no separation of developers and testers. Testing was integrated into development and everyone on the team tested.
- Testing was considered equally important as development. Test size was tied directly to product size and untested work was not considered completed. Automated unit and regression testing occurred in each iteration.
- Through close collaboration and ensuring all work was fully tested, the average time to fix defects remained low even as the project increased in complexity. This allowed bugs to be fixed immediately.
2. Testing Automation Attribute:
贵 expensive
2 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
3. Testing Automation Attribute:
冰山 iceberg
3 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
4. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management
∗ Equipment management
4 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
5. Automation is useful for….
∗ Frequently functionality regression testing
∗ Sample based performance testing
∗ Repetitive work for system and solution testing
5 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
6. Frequently functionality regression
testing
∗ Faster turnaround
∗ Reduce human errors
∗ Cost saving
6 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
7. Sample based performance testing
7 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
8. system and solution testing
∗ Semi-automation
∗ Configure 1000 VPN tunnels
∗ Create 10000 routing table entries
∗ …..
8 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
9. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management
∗ Equipment management
9 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
10. The Goal
∗ No matter manual or auto
Accurate
Testing Report
10 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
11. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management
∗ Equipment management
11 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
12. Remote Control Your Products
Personal
Computer Web Browser
Truck
Tablet Video
Printer
Camera
Telecommuter
House with
Web Server
Router Video
Refrigerator Phone
Television Woman -
End User
Scanner
Television -
Closed-circuit
Weather
Station Woman -
Set Top Box Sitting
(STB)
12 Tunnel This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
13. Remote Control Your Testing
∗ 2 ways of software manual testing (or Device Control)
∗ Mouse and Eye (expectation)
∗ Keyboard and Eye (expectation)
∗ Automation is to repeat
∗ Mouse and Eye – GUI automation
∗ Keyboard and Eye – CLI automation
13 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
14. GUI Automation
∗ Windows based GUI automation
∗ AutoIT
∗ Browser based GUI automation
∗ QTP
∗ WinRunner
∗ Silktest
∗ AutoIT
∗ Selenium
14 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
15. CLI Automation
∗ Expect
∗ TCL Expect
∗ Perl Expect
∗ Python Expect
15 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
16. Embedded devices State of the
Union
∗ Most network devices (network equipment)
∗ Management interface: Browser or console
∗ Mobile devices
∗ Keyboard simulation
∗ Serial port, USB port or Bluetooth
16 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
17. A Sigma Approach (in progress)
Keyboard simulation,
predefined key sequence
(XML), render engine and
Screen capture
Result Verification
(manual, only once)
Replay keyboard simulation,
Screen capture and Image
comparison
17 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
18. Pick the Tool is just beginning
万里长征第一步
18 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
19. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management
∗ Equipment management
19 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
20. API Design
∗ Lessons learned: API (Library) design is key for
∗ Productivity
∗ Modularity
∗ Maintainability
∗ Expansion
∗ Don’t start with programming, start with API design
∗ 磨刀不误砍柴工 – It is true…
20 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
21. API Design
∗ Design pattern or other OO technique apply
∗ Need senior software architect blessing
∗ More design brain storming sessions, more reviews,
the better.
∗ Spend more time on the API design, it will pay off in
the long run
21 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
22. API Principle
Scripts
API
Control Library
22 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
23. API Design - Principle
•Connect to Device Device_id = connect_to_device();
∗ Script only contains testing actions, no software
•Issue XXX command to send Status = Send_SMS(device_id, $string);
independent info
SMS messages
Assert($status);
•Verify messages have been
Status = Get_SMS(sent, $string)
sent successfully
Assert($status)
•Verify messages saved in
the SMS sent folder Status = delete_SMS(sent,$string);
•Delete message Assert($status)
•Verify message has been
deleted
23 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
24. API User Manual
∗ Most important document for script development
API 名称
描述
输入参数 参数 1
参数 2
参数 3
返回值
使用举例
This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
24
25. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management
∗ Equipment management
25 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
26. Script Development Process
×Ô¶¯»¯½Å±¾¿ª·¢Á÷
³Ì²Î¿¼
26 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
27. Define Script Quality
∗ All common development coding standard applies
∗ Version control
∗ Standard template
∗ Standard header
∗ 20% of the code is comments
∗ Well indented
∗ Use API and functions
∗ Enough error checking
27 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
28. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management 28 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
29. Define Script Quality
∗ Testing script has it own quality too
∗ Exactly match the manual testing steps
∗ Just by reading logs, we know exactly what scripts are
trying to do
∗ Device and hardware/software environment independent
∗ Enough debugging message when test case failed
∗ Clean out environment before exit or before execution
29 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
30. Script Quality Checklist
Sigma Script Quality Others Script
Quality Checklist
Checklist
30 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
31. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management 31 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
32. Automation Framework ?
∗ Always remember our goal
∗ You need at least an execution engine for
∗ Error resuming batch run
∗ Report generation
32 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
33. Automation Framework
∗ Want to design and implement an Automation
Framework?
∗ Checkout
<<Automation Framework: Design and
Implementation>>
33 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
34. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management 34 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
35. Execution Process
Always remember the goal
35 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
36. Execution Process
∗ Image upgrade process
∗ Parallel execution
∗ Total run time
∗ Debugging time
∗ Report collection and generation
36 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
37. Image upgrade process
∗ Where to get the image
∗ Can you automatically get the image and upgrade to
your product
∗ Call this a “clean” procedure
37 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
38. Parallel execution
∗ To save total run time – sometimes even automation
is too long
∗ This is where the script need to be environment
independent
∗ Be aware on the equipment cost issue
∗ How many parallel scripts can an engineer run and
manage (also equipments)
38 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
39. Run Time
∗ Total run time per engineer
∗ Total Debugging time per engineer
∗ Total reporting time per engineer
39 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
40. Report collection and generation
∗ If it is parallel, need a process to parallel report
collection and generation
∗ Testing Information Database?
∗ Web Interface?
40 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
41. Agenda
∗ Realize when you need automation
∗ Always remember the goal
∗ Find the way to control your product
∗ API design
∗ Define the development process
∗ Script Quality
∗ Do I need an automation framework?
∗ Define the execution process
∗ Team management 41 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
42. Team Management
∗ Who write the scripts?
∗ Who write the framework
∗ Who execute the scripts
∗ Are they happy
42 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
43. Who Write Scripts
∗ Whoever write the test plan, write the test scripts
∗ Knows test case the best
∗ Not professional coder
∗ Hard for project management
∗ Professional scripter
∗ Need to understand the test case first
∗ High productivity
∗ Good Quality
43 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
44. Who Write Framework
∗ Or any other testing related tools
∗ If a tester develop a great testing tool, who maintains
it?
∗ Who to coordinate the common share library
development
∗ Who to develop testing tools if there is a request
∗ Most of the time developer does this.
∗ If have resources, think about a Tools Team
44 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
45. Who Execute the Scripts
∗ Whoever write the scripts, execute the scripts
∗ Low productivity
∗ Bad script portability
∗ Unpredictable schedule (bad for scheduled release)
∗ Dedicated resources (professional executer)
∗ Streamline resources
∗ High productivity
∗ Fixed total run time
∗ Most modern companies do it this way
45 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
46. Interaction process
∗ Test cases writer and professional scripter
∗ Scripter and executer
46 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
47. Case Writer and Scripter
∗ Repeatable test cases
47 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
48. Scripter and Runner
∗ Script integration process
∗ Newly develop scripts submit to runner
∗ Use “State” to manage
∗ Script maintenance process
∗ New image change
∗ Use “State” to manage
48 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
49. Team Building
∗ Manual tester, scripter are doing creative things
∗ Script runner may be board
∗ Role rotation
∗ Clear role for a clear career path
49 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
50. Streamlining the team
脚本开发 脚本开发 脚本开发 脚本开发
脚本执行 脚本执行 脚本执行
50 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
51. The Goal
∗ No matter manual or auto
Accurate
Testing Report
51 This material is for training purpose only.
No duplication without consent of Sigma-RT is permitted.
Editor's Notes
Use Huawei high level wrapper (10 times productivity increase) as example
Use Huawei high level wrapper (10 times productivity increase) as example
Use Huawei high level wrapper (10 times productivity increase) as example
Use Huawei high level wrapper (10 times productivity increase) as example