The document describes KKBOX's efforts to develop a smarter monkey testing tool called APE using machine learning. APE uses the TensorFlow Object Detection API to train a model on screenshots labeled with UI elements. It then deploys the trained model on Android and iOS to automatically detect and interact with elements during testing. Some key findings included that training with GPU is faster, active learning helps labeling, F1 scores measure model performance, minimizing labels improves learning, and grayscale training works well. The vision is that APE can help with localization testing by detecting languages and aid design patterns like page objects through element detection. In summary, the document discusses how KKBOX is leveraging machine learning for more intelligent automated testing.
The Google Test Automation Conference (GTAC) is an annual test automation conference hosted by Google. 2016 is 10th GTAC. I'll share the most impressive parts of experience sharing & tool I heard in GTAC 2016 in this slide.
Zipline is Airbnb’s data management platform specifically designed for ML use cases. Previously, ML practitioners at Airbnb spent roughly 60% of their time on collecting and writing transformations for machine learning tasks. Zipline reduces this task from months to days – by making the process declarative. It allows data scientists to easily define features in a simple configuration language. The framework then provides access to point-in-time correct features – for both – offline model training and online inference. In this talk we will describe the architecture of our system and the algorithm that makes the problem of efficient point-in-time correct feature generation, tractable.
The attendee will learn
Importance of point-in-time correct features for achieving better ML model performance
Importance of using change data capture for generating feature views
An algorithm – to efficiently generate features over change data. We use interval trees to efficiently compress time series features. The algorithm allows generating feature aggregates over this compressed representation.
A lambda architecture – that enables using the above algorithm – for online feature generation.
A framework, based on category theory, to understand how feature aggregations be distributed, and independently composed.
While the talk if fairly technical – we will introduce all the concepts from first principles with examples. Basic understanding of data-parallel distributed computation and machine learning might help, but are not required.
Take Pride in Your Code - Test-Driven DevelopmentBADR
TDD is one of the best practices a developer would pick throughout his professional career. In this slide-deck, we shed a light on enriching your code with the goodies of TDD.
The Final Frontier, Automating Dynamic Security TestingMatt Tesauro
This is not your normal DevSecOps presentation. We’re going to take on the most difficult aspect of security automation, the dreaded and pitfall prone, dynamic testing. You want to shift left and automate all the things, but DAST specifically has many thorns. How do you ensure what you’re testing matches production? Do devs own the environment? On metal, docker, kubernetes, or docker-compose? Test coverage? Balancing all these elements and more is not easy. Especially if you want to create a single, scalable, standard for your entire org. In this talk, we’ll cover what is needed to start automating your dynamic security testing, how to navigate the trade-offs you’ll have to consider, and finally how best to fit automated DAST testing into your software delivery pipelines. We’ll discuss simple and easy steps to gain efficiency and how to scale to mature pipelines that require little to no human intervention.
The Google Test Automation Conference (GTAC) is an annual test automation conference hosted by Google. 2016 is 10th GTAC. I'll share the most impressive parts of experience sharing & tool I heard in GTAC 2016 in this slide.
Zipline is Airbnb’s data management platform specifically designed for ML use cases. Previously, ML practitioners at Airbnb spent roughly 60% of their time on collecting and writing transformations for machine learning tasks. Zipline reduces this task from months to days – by making the process declarative. It allows data scientists to easily define features in a simple configuration language. The framework then provides access to point-in-time correct features – for both – offline model training and online inference. In this talk we will describe the architecture of our system and the algorithm that makes the problem of efficient point-in-time correct feature generation, tractable.
The attendee will learn
Importance of point-in-time correct features for achieving better ML model performance
Importance of using change data capture for generating feature views
An algorithm – to efficiently generate features over change data. We use interval trees to efficiently compress time series features. The algorithm allows generating feature aggregates over this compressed representation.
A lambda architecture – that enables using the above algorithm – for online feature generation.
A framework, based on category theory, to understand how feature aggregations be distributed, and independently composed.
While the talk if fairly technical – we will introduce all the concepts from first principles with examples. Basic understanding of data-parallel distributed computation and machine learning might help, but are not required.
Take Pride in Your Code - Test-Driven DevelopmentBADR
TDD is one of the best practices a developer would pick throughout his professional career. In this slide-deck, we shed a light on enriching your code with the goodies of TDD.
The Final Frontier, Automating Dynamic Security TestingMatt Tesauro
This is not your normal DevSecOps presentation. We’re going to take on the most difficult aspect of security automation, the dreaded and pitfall prone, dynamic testing. You want to shift left and automate all the things, but DAST specifically has many thorns. How do you ensure what you’re testing matches production? Do devs own the environment? On metal, docker, kubernetes, or docker-compose? Test coverage? Balancing all these elements and more is not easy. Especially if you want to create a single, scalable, standard for your entire org. In this talk, we’ll cover what is needed to start automating your dynamic security testing, how to navigate the trade-offs you’ll have to consider, and finally how best to fit automated DAST testing into your software delivery pipelines. We’ll discuss simple and easy steps to gain efficiency and how to scale to mature pipelines that require little to no human intervention.
Tools and libraries for common problems (Early Draft)rc2209
This is an early draft, actual slides: https://www.slideshare.net/rc2209/tools-and-libraries-for-common-android-problems
In this talk I cover a wide variety of tools to solve all types of well solved Android Problems. I discuss best practices, gotchas, problems and great solutions.
How to Improve Computer Vision with Geospatial ToolsSafe Software
Can computer vision mimic human vision? Maybe – but we need the right tools to process the high volume of data required by machine learning algorithms. Integration tools like FME can be used to harness the power of geospatial and machine learning for object detection.
In this webinar, you will learn how to:
- Use the ML libraries exposed in FME for object detection on photos or with remote sensing data (with an Open CV integration)
- How to improve the detection results with geospatial analysis
- Deliver results to stakeholders with quality outputs like maps, images, or info shared directly to a destination system
Interfaces of the future now available augmented reality - google glass - 3...CuriousInventor
A tidal wave of new wearable tech, 3D sensors and displays is coming that will bring computers into our 3D world, and it's coming this year or the next. This presentation goes over the enabling technology (depth sensor, object tracking & recognition algorithms, better cpus and batteries), surveys several new devices coming out, and finally talks about the societal implications of having computers so much more tightly integrated into our world.
We have calculated 31.4 trillion digits of Pi in 2019 and broke the world record in the Pi computation. This talk will discuss the nature of the calculation, the architecture, challenges and techniques, and of course the brief history of Pi computation. Calculating Pi has been the speaker's childhood dream and this talk will also explain how the small dream grew to the new world record.
TEE - kernel support is now upstream. What this means for open source securityLinaro
TEE security infrastructure is now upstream in the Linux kernel, thanks to the hard work of many people in the ARM open source ecosystem. In this upcoming webinar, Joakim Bech and Jens Wiklander of the Linaro Security Working Group explain:
‣ Why upstream Linux kernel driver support is an important milestone.
‣ The relationship with specifications such as GlobalPlatform.
‣ A recap of the design principles for the TEE driver.
‣ How to get involved with TEE development.
This webinar is based on the work of the Linaro Security Working Group. Their work helps Linaro achieve its mission of providing upstream open source support for the ARM ecosystem. The webinar will be of interest to developers and engineering managers who would like the latest status on TEE support in Linux, particularly those looking to develop secure applications with e.g. OP-TEE. It’s also a great case study for those interested in the challenges of Linux kernel upstreaming. There will be the opportunity to ask questions before, during and after the webinar.
🎙 Speakers:
Joakim Bech, Security Working Group Tech Lead, Linaro
Jens Wiklander, Security Working Group Engineer & Upstream Driver Author, Linaro
🎯 Moderator:
Bill Fletcher, EMEA Field Engineering, Linaro
✨ Register here
http://linaro.co/webinar01
For more information on...
On Linaro - Leading Collaboration in the ARM Ecosystem - linaro.org
On OP-TEE - the TEE in Linux using the ARM® TrustZone® technology op-tee.org
----------------------------------------------
Videos & Presentation
--
Introduction to OP-TEE
--
A great introduction to OP-TEE security written from the standpoint of Automotive Grade Linux. It's only 13 slides with some great diagrams explaining trusted execution, secure boot and isolation.
#Automotive #AGL #OP-TEE #Linux
https://www.slideshare.net/YannickGicquel/introduction-to-optee-26-may-2016
--
OP-TEE for Beginners and Porting Review
--
Explains the building blocks involved in Security including TrustZone, OP-TEE, Trusted Firmware etc. Goes into detail on how Secure Boot Works.. and Why. Explains how a simple secure Trusted Application interacts with OP-TEE and works. Brief overview on how to port OP-TEE to an ARM platform. Opens discussions for Potential Challenges and Hardware limitations and how they can be overcome.
#TrustedApplication #Trustzone
http://connect.linaro.org/resource/hkg15/hkg15-311-op-tee-for-beginners-and-porting-review/
This session discusses how to find good multiple-CPU performance with Theano* and TensorFlow*, how to extend a single-machine model with MPI, and optimize its performance as we scale out and up.
How We Won Gamedev By Rolling Our Own Tech (no notes)Mihai Gosa
Did you know you can make successful games faster, cheaper and more reliable by building your own tech instead of using a third party engine?
With a small team and no budget, we managed to make 2014's best tactics game (Door Kickers) in a very short time, with a huge amount of content, on 5 platforms.
Without using any third-party engines or tools.
Instead of adding tech, we removed tech. We kept removing until there was almost nothing left. Sounds counter-intuitive? Think of it this way: simpler means faster, cheaper and more reliable.
Learn about the extreme simplicity of the production pipeline and the "unified everything" game engine used for Door Kickers.
Learn that developing a game can also be done in a very smart and simple way, instead of spending years or $$$$$ on game engines. Learn how to focus on what is important and that finding the simplest solutions is usually the hardest.
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...The Linux Foundation
Mobile devices, such as smart phones and tablets, are becoming de-facto everyday computing and communication devices, virtualization can bring additional benfits to mobile devices for both security and manageability. IT department may use hypervisor, as a highly secure solution, to manage autherized mobile devices, such as for network traffic monitoring, filtering, scan (for virus detection), and/or OS update/patching even when the guest OS becomes completely dead. We insert Xen to the mobile OS Android to deprivilege Android as guest for security and manageability purpose. However, the usage case of mobile device is quit different with that of server, for example mobile devices runs completely different benchmarks (mostly multimedia focused) vs. that in server (mostly responsiveness focused). We analyze the gap of Xen as a mobile hypervisor and present how we improve the performance.
This talk will focus on Techniques, metrics and different tests (code, models, infra and features/data) that help the developers of machine learning systems to achieve CD.
Scott Clark, Software Engineer, Yelp at MLconf SFMLconf
Abstract: Introducing the Metric Optimization Engine (MOE); an open source, black box, Bayesian Global Optimization engine for optimal experimental design.
In this talk we will introduce MOE, the Metric Optimization Engine. MOE is an efficient way to optimize a system’s parameters, when evaluating parameters is time-consuming or expensive. It can be used to help tackle a myriad of problems including optimizing a system’s click-through or conversion rate via A/B testing, tuning parameters of a machine learning prediction method or expensive batch job, designing an engineering system or finding the optimal parameters of a real-world experiment.
MOE is ideal for problems in which the optimization problem’s objective function is a black box, not necessarily convex or concave, derivatives are unavailable, and we seek a global optimum, rather than just a local one. This ability to handle black-box objective functions allows us to use MOE to optimize nearly any system, without requiring any internal knowledge or access. To use MOE, we simply need to specify some objective function, some set of parameters, and any historical data we may have from previous evaluations of the objective function. MOE then finds the set of parameters that maximize (or minimize) the objective function, while evaluating the objective function as few times as possible. This is done internally using Bayesian Global Optimization on a Gaussian Process model of the underlying system and finding the points of highest Expected Improvement to sample next. MOE provides easy to use Python, C++, CUDA and REST interfaces to accomplish these goals and is fully open source. We will present the motivation and background, discuss the implementation and give real-world examples.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Tools and libraries for common problems (Early Draft)rc2209
This is an early draft, actual slides: https://www.slideshare.net/rc2209/tools-and-libraries-for-common-android-problems
In this talk I cover a wide variety of tools to solve all types of well solved Android Problems. I discuss best practices, gotchas, problems and great solutions.
How to Improve Computer Vision with Geospatial ToolsSafe Software
Can computer vision mimic human vision? Maybe – but we need the right tools to process the high volume of data required by machine learning algorithms. Integration tools like FME can be used to harness the power of geospatial and machine learning for object detection.
In this webinar, you will learn how to:
- Use the ML libraries exposed in FME for object detection on photos or with remote sensing data (with an Open CV integration)
- How to improve the detection results with geospatial analysis
- Deliver results to stakeholders with quality outputs like maps, images, or info shared directly to a destination system
Interfaces of the future now available augmented reality - google glass - 3...CuriousInventor
A tidal wave of new wearable tech, 3D sensors and displays is coming that will bring computers into our 3D world, and it's coming this year or the next. This presentation goes over the enabling technology (depth sensor, object tracking & recognition algorithms, better cpus and batteries), surveys several new devices coming out, and finally talks about the societal implications of having computers so much more tightly integrated into our world.
We have calculated 31.4 trillion digits of Pi in 2019 and broke the world record in the Pi computation. This talk will discuss the nature of the calculation, the architecture, challenges and techniques, and of course the brief history of Pi computation. Calculating Pi has been the speaker's childhood dream and this talk will also explain how the small dream grew to the new world record.
TEE - kernel support is now upstream. What this means for open source securityLinaro
TEE security infrastructure is now upstream in the Linux kernel, thanks to the hard work of many people in the ARM open source ecosystem. In this upcoming webinar, Joakim Bech and Jens Wiklander of the Linaro Security Working Group explain:
‣ Why upstream Linux kernel driver support is an important milestone.
‣ The relationship with specifications such as GlobalPlatform.
‣ A recap of the design principles for the TEE driver.
‣ How to get involved with TEE development.
This webinar is based on the work of the Linaro Security Working Group. Their work helps Linaro achieve its mission of providing upstream open source support for the ARM ecosystem. The webinar will be of interest to developers and engineering managers who would like the latest status on TEE support in Linux, particularly those looking to develop secure applications with e.g. OP-TEE. It’s also a great case study for those interested in the challenges of Linux kernel upstreaming. There will be the opportunity to ask questions before, during and after the webinar.
🎙 Speakers:
Joakim Bech, Security Working Group Tech Lead, Linaro
Jens Wiklander, Security Working Group Engineer & Upstream Driver Author, Linaro
🎯 Moderator:
Bill Fletcher, EMEA Field Engineering, Linaro
✨ Register here
http://linaro.co/webinar01
For more information on...
On Linaro - Leading Collaboration in the ARM Ecosystem - linaro.org
On OP-TEE - the TEE in Linux using the ARM® TrustZone® technology op-tee.org
----------------------------------------------
Videos & Presentation
--
Introduction to OP-TEE
--
A great introduction to OP-TEE security written from the standpoint of Automotive Grade Linux. It's only 13 slides with some great diagrams explaining trusted execution, secure boot and isolation.
#Automotive #AGL #OP-TEE #Linux
https://www.slideshare.net/YannickGicquel/introduction-to-optee-26-may-2016
--
OP-TEE for Beginners and Porting Review
--
Explains the building blocks involved in Security including TrustZone, OP-TEE, Trusted Firmware etc. Goes into detail on how Secure Boot Works.. and Why. Explains how a simple secure Trusted Application interacts with OP-TEE and works. Brief overview on how to port OP-TEE to an ARM platform. Opens discussions for Potential Challenges and Hardware limitations and how they can be overcome.
#TrustedApplication #Trustzone
http://connect.linaro.org/resource/hkg15/hkg15-311-op-tee-for-beginners-and-porting-review/
This session discusses how to find good multiple-CPU performance with Theano* and TensorFlow*, how to extend a single-machine model with MPI, and optimize its performance as we scale out and up.
How We Won Gamedev By Rolling Our Own Tech (no notes)Mihai Gosa
Did you know you can make successful games faster, cheaper and more reliable by building your own tech instead of using a third party engine?
With a small team and no budget, we managed to make 2014's best tactics game (Door Kickers) in a very short time, with a huge amount of content, on 5 platforms.
Without using any third-party engines or tools.
Instead of adding tech, we removed tech. We kept removing until there was almost nothing left. Sounds counter-intuitive? Think of it this way: simpler means faster, cheaper and more reliable.
Learn about the extreme simplicity of the production pipeline and the "unified everything" game engine used for Door Kickers.
Learn that developing a game can also be done in a very smart and simple way, instead of spending years or $$$$$ on game engines. Learn how to focus on what is important and that finding the simplest solutions is usually the hardest.
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...The Linux Foundation
Mobile devices, such as smart phones and tablets, are becoming de-facto everyday computing and communication devices, virtualization can bring additional benfits to mobile devices for both security and manageability. IT department may use hypervisor, as a highly secure solution, to manage autherized mobile devices, such as for network traffic monitoring, filtering, scan (for virus detection), and/or OS update/patching even when the guest OS becomes completely dead. We insert Xen to the mobile OS Android to deprivilege Android as guest for security and manageability purpose. However, the usage case of mobile device is quit different with that of server, for example mobile devices runs completely different benchmarks (mostly multimedia focused) vs. that in server (mostly responsiveness focused). We analyze the gap of Xen as a mobile hypervisor and present how we improve the performance.
This talk will focus on Techniques, metrics and different tests (code, models, infra and features/data) that help the developers of machine learning systems to achieve CD.
Scott Clark, Software Engineer, Yelp at MLconf SFMLconf
Abstract: Introducing the Metric Optimization Engine (MOE); an open source, black box, Bayesian Global Optimization engine for optimal experimental design.
In this talk we will introduce MOE, the Metric Optimization Engine. MOE is an efficient way to optimize a system’s parameters, when evaluating parameters is time-consuming or expensive. It can be used to help tackle a myriad of problems including optimizing a system’s click-through or conversion rate via A/B testing, tuning parameters of a machine learning prediction method or expensive batch job, designing an engineering system or finding the optimal parameters of a real-world experiment.
MOE is ideal for problems in which the optimization problem’s objective function is a black box, not necessarily convex or concave, derivatives are unavailable, and we seek a global optimum, rather than just a local one. This ability to handle black-box objective functions allows us to use MOE to optimize nearly any system, without requiring any internal knowledge or access. To use MOE, we simply need to specify some objective function, some set of parameters, and any historical data we may have from previous evaluations of the objective function. MOE then finds the set of parameters that maximize (or minimize) the objective function, while evaluating the objective function as few times as possible. This is done internally using Bayesian Global Optimization on a Gaussian Process model of the underlying system and finding the points of highest Expected Improvement to sample next. MOE provides easy to use Python, C++, CUDA and REST interfaces to accomplish these goals and is fully open source. We will present the motivation and background, discuss the implementation and give real-world examples.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Understanding Nidhi Software Pricing: A Quick Guide 🌟
Choosing the right software is vital for Nidhi companies to streamline operations. Our latest presentation covers Nidhi software pricing, key factors, costs, and negotiation tips.
📊 What You’ll Learn:
Key factors influencing Nidhi software price
Understanding the true cost beyond the initial price
Tips for negotiating the best deal
Affordable and customizable pricing options with Vector Nidhi Software
🔗 Learn more at: www.vectornidhisoftware.com/software-for-nidhi-company/
#NidhiSoftwarePrice #NidhiSoftware #VectorNidhi
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
36. How We Test
● Loop, in a specific event count
○ Screenshot
○ Feed the screenshot to TFLite Object Detection API
○ Get labels’ information (label name, coordinate, confidence)
○ Do actions (click, scroll, keyevent)
60. F1 Measure
● With a general formula
○ Detection
○ Boxes information of ground truth
○ Confidence score
○ Precision / Recall
○ F1 Score
● F1 Score (Performance indicators)
61.
62. Label F1 Criteria F1 Score F1 Diff
back button 0 0.946 0.946
cancel button 0 0.969 0.969
check box 0 1.0 1.0
cover 0 0.955 0.955
pause button 0 0.882 0.882
play button 0 0.876 0.876
text button 0 0.949 0.949
overall 0 0.939 0.939
F1 Score - 1st Model
63. Label F1 Criteria F1 Score F1 Diff
back button 0.946 0.948 0.02
cancel button 0.969 0.979 0.1
check box 1.0 1.0 0
cover 0.955 0.998 0.043
pause button 0.882 1.0 0.118
play button 0.876 1.0 0.124
text button 0.949 0.949 0
overall 0.939 0.982 0.043
F1 Score - 2nd Model
64. Label F1 Criteria F1 Score F1 Diff
back button 0.948 0.939 -0.009
cancel button 0.979 0.981 0.002
check box 1.0 1.0 0
cover 0.998 0.98 -0.018
pause button 1.0 0.955 -0.045
play button 1.0 1.0 0
text button 0.949 0.956 0.007
overall 0.982 0.973 -0.009
F1 Score - 3rd Model
73. Before After
allow button ok button
cancel button cancel button
confirm button ok button
delete button ok button
deny button cancel button
download button ok button
go off air button ok button
ok button ok button
78. Before After
allow button text button
cancel button text button
confirm button text button
delete button text button
deny button text button
download button text button
go off air button text button
ok button text button
83. About Color
● Color is not that important to Testing
○ Button color
○ Text color
○ Background color
● Take a long shot, we converted the training into grayscale
84. About Color
● Set model config to read image by garyscale
model {
...
image_resizer {
fixed_shape_resizer {
...
convert_to_grayscale : true
}
}
}
100. Vision
● Conclusion
ML is not that far away from us.
● For Mobile
○ Libraries is easy to use
○ Detect speed of TensorFlow Lite is fast
○ As above, and also precise
103. Localization Testing
● Optical Character Recognition System
● Flow
○ Set language
○ Test & Detect
○ Assert specific language string
登入 KKBOX
Login to KKBOX
ログイン
107. Page Object
class LoginPage {
init() {
# assertion of this page
expectExist(element: LoginButton)
}
func login() {
type(element: accountTextField)
type(element: passwordTextField)
click(element: loginButton)
}
}
108. Page Object
● Assertion with specific condition
○ isDisplay or isExist
■ On screen ?
■ On hierarchy ?
109. Page Object
● Assertion with object detection
● Truly exist and display on the screen
PlayerPage
assertTrue('play button' in labels)
LoginPage
assertTrue('login button' in labels)