
Mohamed Yusuf
Principal Engineer
Kongsberg Digital
location_on India
Member since 1 year
Mohamed Yusuf
Specialises In
I've been through the roles of developer, QA, QA automation, Lead SDET and Automation CoE Lead, and doing organization level advocacy for advanced niches in the quality engineering space. Also, working through integration of Cloud, DevOps and Computer Vision technologies into resolving complex automation challenges across various business verticals. Have built multiple tools, frameworks, test engines and quality engineering solution stack across multiple tech layers - UI, API, Mobile, DB and diverse technologies - desktop, web, cloud, IaC.
-
keyboard_arrow_down
Continuous Monitoring Combined with Continuous Testing in Agile/DevOps delivery models
Mohamed YusufPrincipal EngineerKongsberg DigitalBhargav MurarisettyAutomation Test EngineerKongsberg Digitalschedule 11 months ago
Sold Out!20 Mins
Experience Report
Intermediate
We are aware of the continuous monitoring of various data intensive systems and services across cloud platforms and on-premise settings. However, when it comes to continuous monitoring in alignment with continuous testing of visually heavy live streaming applications, we are left with the fewer options especially in the open source space.
In an attempt to address the challenges around these areas, we've had to build ImageVision for detecting various types of visual anomalies for the sensor and time-series based live streaming applications. In the context of Agile and DevOps centric delivery models, the purpose and premise of ImageVision gains significance.
Code based conventional open-source automation tools are not sufficient to address the deeper
challenges of modern hi-tech digital transformation systems that include, but not limited to Edge, cloud and container computing and plenty of visual plotting of sensor data streaming in real-time among others.Based on my research and exploration, I observed that it's unlikely to find even off-the-shelf commercial tools to address the complex automation requirements of detection of visual anomalies in real-time plotting of sensor data streaming that I've addressed in my projects with ImageVision.
Also, the open source automation tools can be better complemented and extended with the integration of visual automation tool like ImageVision to add more flexibility and versatility.
ImageVision is a multi-purpose in-house visual automation tool. It's not meant for replacement of code based automation tools, but it's definitely extending and complementing greatly the traditional code based automation approaches. Even it has proved to be an absolute mandatory in fulfilling the needs of extremely complex visual anomaly detection scenarios and also in many of the complex and tricky UI interactions where the code based automation approaches have been failing to meet the expectations disgracefully.
Listed below various purposes and the features of the tool.
- Detect various types of anomalies in visual plotting of stream of sensor data points in real time in a fast paced agile delivery model, which otherwise would be impossible to detect.
- Continuous testing combined with continuous monitoring for tracking anomalies in dev/test/staging envs.
- Perform any type of complex automation interactions as if a real human user would do within the visual plotting regions/widgets or on any part of the target region of the screen/image
- Capture any web element as an image for further automation actions
- Compare sets of baseline and runtime images with each other using sophisticated computer vision algorithms
- Plenty of configurations that offer degrees of flexibility to apply the algorithms as a group or individually and in any order of applying them
- Potentially offering UI and platform agnostic E2E visual automation capabilities
- Apply image processing techniques on the basis of configurations including ignoring certain regions of images during grab and compare operations
- Comprising three core modules : Image Grab, Image Compare, and Image Interact. Image Interact module is internally named Actionize
- Currently, addressing three major anomalous conditions in real time mode: I. data gap in the plotting of data or no plotting for certain amount of time or no plotting continuously or intermittently, II. occurrence of hang issue in the plotting - again continuously or intermittently, III. occurrence of visually flickering effect in the plotting
- Pretty easy to integrate and use within automation test flows - just one single API call with configurations would carry out all the required tasks and actions
- Modules can either be run independently or as a sequence of dependent chain based on the tasks or workflows
- Json format reports each for image grab, compare, interactions, and each anomalous condition
- The user API set or TDK(Test Development Kit) that invokes the backend engine has been built with TypeScript and JavaScript. A group of backend engines each for unique purpose that carry out the actual tasks and actions has been built with python and computer vision libraries
-
keyboard_arrow_down
Using AdaptiveCards.io Framework for Automation Test Results
Bhargav MurarisettyAutomation Test EngineerKongsberg DigitalMohamed YusufPrincipal EngineerKongsberg Digitalschedule 1 year ago
Sold Out!45 Mins
Tutorial
Intermediate
Microsoft's Adaptive Cards are platform-agnostic snippets of UI, authored in JSON, that apps and services can openly exchange. When delivered to a specific app, the JSON is transformed into native UI that automatically adapts to its surroundings. It helps design and integrate light-weight UI for all major platforms and frameworks.
How to design your Adaptivecard to send your testResults to Microsoft Teams.
By Using Adaptivecards we can create a card as per requirements and share the results to Microsoft teams once it is executed.
this can be extened for sending alerts for sensitive testcases execution status without waiting for the execution to complete.
for more info on adaptive cards refer to https://adaptivecards.io/
-
keyboard_arrow_down
Detecting Complex Visual Anomalies In Real-time Time Series Visualizations With E2E Tests
favorite_border 14 selenium-conf-2022 tools-and-infra Experience Report 20 Mins Intermediate computer-vision protractor image-grab image-compare-with-computer-vision-algorithms ui-agnostic-visual-automation complementing-conventional-automation test-development-kit actionize-for-visual-interactions real-time-plotting-of-sensor-data visual-anomaly-detectionsMohamed YusufPrincipal EngineerKongsberg DigitalBhargav MurarisettyAutomation testing engineerAmdocsschedule 1 year ago
Sold Out!20 Mins
Experience Report
Intermediate
ImageVision is a multi-purpose in-house visual automation tool. It's not meant for replacement of code based automation tools, but it's definitely extending and complementing greatly the traditional code based automation approaches. Even it has proved to be an absolute mandatory in fulfilling the needs of extremely complex visual anomaly detection scenarios and also in many of the complex and tricky UI interactions where the code based automation approaches have been failing to meet the expectations disgracefully.
Listed below various purposes and the features of the tool.
- Detect various types of anomalies in visual plotting of stream of sensor data points in real time, which otherwise would be impossible to detect
- Perform any type of complex automation interactions as if a real human user would do within the visual plotting regions/widgets or on any part of the target region of the screen/image
- Capture any web element as an image for further automation actions
- Compare sets of baseline and runtime images with each other using sophisticated computer vision algorithms
- Plenty of configurations that offer degrees of flexibility to apply the algorithms as a group or individually and in any order of applying them
- Potentially offering UI and platform agnostic E2E visual automation capabilities
- Apply image processing techniques on the basis of configurations including ignoring certain regions of images during grab and compare operations
- Comprising three core modules : Image Grab, Image Compare, and Image Interact. Image Interact module is internally named Actionize
- Currently, addressing three major anomalous conditions in real time mode: I. data gap in the plotting of data or no plotting for certain amount of time or no plotting continuously or intermittently, II. occurrence of hang issue in the plotting - again continuously or intermittently, III. occurrence of visually flickering effect in the plotting
- Pretty easy to integrate and use within automation test flows - just one single API call with configurations would carry out all the required tasks and actions
- Modules can either be run independently or as a sequence of dependent chain based on the tasks or workflows
- Json format reports each for image grab, compare, interactions, and each anomalous condition
- The user API set or TDK(Test Development Kit) that invokes the backend engine has been built with TypeScript and JavaScript. A group of backend engines each for unique purpose that carry out the actual tasks and actions has been built with python and computer vision libraries
-
keyboard_arrow_down
Managing Automation Runtime Challenges in Digital Transformation Systems
Mohamed YusufPrincipal EngineerKongsberg DigitalAnuvrat SinghBhargav MurarisettyAutomation testing engineerAmdocsschedule 1 year ago
Sold Out!20 Mins
Experience Report
Intermediate
The automation development life cycle consisting of various activities are eventually aimed at seamless & smooth test scripts executions and lesser time to be spent on failure analysis. In a nutshell, the Test Execution and Failure Analysis are the two critical processes we focus on to get better returns out of test automation.
There are plenty of modern tools and frameworks that are evolving with more capabilities. However, when it comes to realizing tangible benefits of automation for vastly connected modern Digital Transformation systems and applications, some degrees of tailor-made automation enhancements and customizing features are inevitable especially in the no-cost or low-cost open source tools space.
The pointers below are obviously relatable to any teams that automate Digital Transformation systems that range from dealing with streams of sensor data to Edge and cloud computing to various third party applications and services with open source automation tools. In our case, the E2E web automation tool being Protractor and the test framework being Jasmine along with plethora of npm packages and other tools/libraries.
Common conditions that affect the consistency and reliability of automation runs :
- Test failures due to unknown error encountered randomly, no consistency in replication of such errors
- Constantly evolving browser and the browser driver versions
- Unexpected test time-outs, subtle sync issues between the tool and the application under test
- In case of failures, regardless of the tools, certain tests can’t be simply re-executed, because the expected default application state is altered by the failed test
- No control over the occurrence of unexpected run-time failures due to environmental/system state/data reasons
- Any type of false positives and false negatives
- Many complex test automation implementations demand regulating systems/tools to be in place that control and regulate the tests at runtime, which are by far the most uncommon thing in the open source space
- Some variants of a tool is more matured than the other variant at some point in time. For example, it was obvious in the past that Selenium-Java was more matured and stable than WebDriver.js for quite some time
- More coding and hence more effort and maintenance overhead for keeping up the stability and reliability only on test level
- Continuous overhead of building and maintaining new CI/CD pipeline stages for reducing the turn-around time for automation reporting where test dependencies are inevitable
-
No more submissions exist.
-
No more submissions exist.