SlideShare a Scribd company logo
1 of 27
Download to read offline
Mission ImpAnsible - NSM
at
(RobotFrame)work
Noc Informatyka – Kraków 2022
Adam Przybyła <adam.przybyla@gmail.com>
In the beginning was the word
And now it’s time to switch to GUI
●
C64 was old and games were hard
●
Arexx – script language
●
Amiga CLI
●
GNU with problems
42
Answer to the Ultimate Question of Life,
the Universe, and Everything
What is a Robot Framework?
●
Open Source
●
Generic test automation framework
●
License
●
Editors
●
Python support
Why to use Robot
Framework?
●
High level keywords
●
Logging
●
Reports
●
Data driven test cases
●
Behavior-driven style test cases
●
Tagging
●
Easy to include in your continous integration system
●
Ubiquous language
Given-When-Then style
Given/When/Then/And/But - removed
Ubiquitous Language is the term Eric Evans
uses in Domain Driven Design for the practice of
building up a common, rigorous language
between developers and users. ... Evans makes
clear that using the ubiquitous language in
conversations with domain experts is an important
part of testing it, and hence the domain model.
Who is an admin?
●
More Commands per sec
●
let’s make a robot – what could be wrong?
●
Reboot fix
●
Logs, logs everywhere …
●
Admins do nothing
Escape from Freedom
Five clouds is enough
Advocatus diavoli
Privacy & Exit plan
Text, text, text ...
●
Linux as text processing system
●
Compilers, compilers and compilers compilers
●
Python - scripts
●
Robot Framework
●
Humanities – languages related science
●
Everymany knows computers
●
Natural language can be accurate
●
Natural Semantic Metalangue
●
We can copy all data to the cloud ...
[adam@tao ~]$ find /bin/ /sbin/|xargs -l1 file|cut -f2 -d:|cut -f1 -d,|sort |uniq -c|
grep -v "symbolic link"|sort -rn
1538 ELF 64-bit LSB executable
523 ELF 64-bit LSB shared object
485 Python script
287 POSIX shell script
71 Perl script
68 Bourne-Again shell script
20 ELF 32-bit LSB executable
17 setuid ELF 64-bit LSB shared object
10 setgid ELF 64-bit LSB shared object
8 regular file
4 setuid executable
3 setgid executable
3 C++ source
2 directory
2 a /usr/bin/sh script
1 setuid regular file
1 Palm OS dynamic library data "#!/bin/sh"
1 Lua script
1 executable
[adam@tao ~]
NSM and Impansible library
●
Impansible for ansible components usage
●
Ansible meta classes replacement
●
NSM – robot framework examples
●
Scripts for Appium, Selenium, Jenkins, Sonar
●
Few languagess scripts
●
Easter egg ;-)
Appium example
*** Settings ***
library Impansible
library Collections
*** Test Cases ***
test 1
${x}= Setup localhost
log to console ${x}
${y}= get from dictionary ${x} ansible_facts
${h}= get from dictionary ${y} ansible_hostname
${z}= get from dictionary ${y} ansible_distribution
Should be Equal ${z} Ubuntu
Should Contain ${h} tester
test 2
${x}= apt localhost package=mtr state=present
${x}= get from dictionary ${x} invocation
${y}= get from dictionary ${x} module_args
${s}= get from dictionary ${y} state
Should be Equal ${s} present
test 3
${x}= apt localhost package=mtr state=absent
${x}= get from dictionary ${x} invocation
${y}= get from dictionary ${x} module_args
${s}= get from dictionary ${y} state
Should be Equal ${s} absent
test 4
${c}= get certificate localhost host=www.onet.pl port=443 proxy_host=10.1.1.1
${e}= get from dictionary ${c} expired
Should not be True ${e}
Impansible
NSM library
*** Settings ***
Resource NSM.robot
Metadata Author Adam Przybyla
*** Test Cases ***
Test 1
Teraz jest tak: ja widzę webpage
Ja nie widzę słowa logged na webpage
Potem ja użyję słów credentials na webpage
Z tego powodu ja widzę słowa logged na webpage
Niedługo potem ja nie widzę webpage
Test 2
Teraz jest tak: ja widzę webpage
Ja nie widzę słowa logged na webpage
Potem ja użyję słów bad credentials na webpage
Z tego powodu ja nie widzę słowa logged na webpage
Niedługo potem ja nie widzę webpage
Test 3
Teraz jest tak: ja widzę webpage
Ja nie widzę słowa logged na webpage
Niedługo potem ja nie widzę webpage
*** Settings ***
Resource NSM.robot
Metadata Author Adam Przybyla <adam.przybyla@gmail.com>
*** Test Cases ***
Test 1
It is like this now: I see the webpage
I not see words logged on the webpage
then i use the words credentials on webpage
because of this: I see words logged on the webpage
after this i see the webpage no more
Test 2
It is like this now: I see the webpage
I not see words logged on the webpage
then i use the words bad credentials on webpage
because of this: I not see words logged on the webpage
after this i see the webpage no more
Test 3
It is like this now: I see the webpage
I not see words logged on the webpage
after this i see the webpage no more
*** Settings ***
Resource NSM.robot
Metadata Author Adam Przybyla
*** Test Cases ***
测试 1
现在是这样的:我看到 webpage
我在 webpage 上看不到 logged 单词
然后我在 webpage 上使用 credentials 单词
因此我在 webpage 上看到 logged 单词
在此之后,我不再看到 webpage
测试 2
现在是这样的:我看到 webpage
我在 webpage 上看不到 logged 单词
然后我在 webpage 上使用 bad credentials 单词
因此我在 webpage 上看不到 logged 单词
在此之后,我不再看到 webpage
测试 3
现在是这样的:我看到 webpage
我在 webpage 上看不到 logged 单词
在此之后,我不再看到 webpage
Future
●
Falsification?
●
Research program
●
More meta components
●
No statistics
●
Time to use methapors
●
Texts for not technical users
Documentation
https://www.youtube.com/watch?v=njcHzGYv7nI
https://www.itprotoday.com/hybrid-cloud/how-know-when-cloud-
computing-trend-has-come-its-end
http://robotframework.org/
https://docs.ansible.com/ansible/2.9/modules/modules_by_categor
y.html
https://searchcloudcomputing.techtarget.com/tip/Beat-vendor-lock-
in-with-a-cloud-exit-strategy
https://www.theguardian.com/commentisfree/2019/aug/24/douglas-
adams-was-right-knowledge-without-understanding-is-meaningless
https://github.com/AdamPrzybyla
https://adamprzybyla.github.io/robotframework-Impansible.html
Questions?

More Related Content

Similar to NocInformatyka2022.pdf

Iron Languages - NYC CodeCamp 2/19/2011
Iron Languages - NYC CodeCamp 2/19/2011Iron Languages - NYC CodeCamp 2/19/2011
Iron Languages - NYC CodeCamp 2/19/2011Jimmy Schementi
 
Building Open-source React Components
Building Open-source React ComponentsBuilding Open-source React Components
Building Open-source React ComponentsZack Argyle
 
Building Open-Source React Components
Building Open-Source React ComponentsBuilding Open-Source React Components
Building Open-Source React ComponentsZack Argyle
 
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.UA Mobile
 
これからのPerlプロダクトのかたち(YAPC::Asia 2013)
これからのPerlプロダクトのかたち(YAPC::Asia 2013)これからのPerlプロダクトのかたち(YAPC::Asia 2013)
これからのPerlプロダクトのかたち(YAPC::Asia 2013)goccy
 
Onivim: Modal Editing from the Future
Onivim: Modal Editing from the FutureOnivim: Modal Editing from the Future
Onivim: Modal Editing from the FutureBryan Phelps
 
Road to sbt 1.0 paved with server
Road to sbt 1.0   paved with serverRoad to sbt 1.0   paved with server
Road to sbt 1.0 paved with serverEugene Yokota
 
Puppet Development Workflow
Puppet Development WorkflowPuppet Development Workflow
Puppet Development WorkflowJeffery Smith
 
Ruby performance - The low hanging fruit
Ruby performance - The low hanging fruitRuby performance - The low hanging fruit
Ruby performance - The low hanging fruitBruce Werdschinski
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matterMizno Kruge
 
Expert JavaScript Programming
Expert JavaScript ProgrammingExpert JavaScript Programming
Expert JavaScript ProgrammingYoshiki Shibukawa
 
Debugging Rails 3 Applications
Debugging Rails 3 ApplicationsDebugging Rails 3 Applications
Debugging Rails 3 ApplicationsNathan Broadbent
 
Introducing Yeoman 1.0 beta
Introducing Yeoman 1.0 betaIntroducing Yeoman 1.0 beta
Introducing Yeoman 1.0 betadigitalzombie
 
Power Leveling your TypeScript
Power Leveling your TypeScriptPower Leveling your TypeScript
Power Leveling your TypeScriptOffirmo
 
The Mysteries Of JavaScript-Fu (@media SF Edition)
The Mysteries Of JavaScript-Fu (@media SF Edition)The Mysteries Of JavaScript-Fu (@media SF Edition)
The Mysteries Of JavaScript-Fu (@media SF Edition)danwrong
 
Dmitry Lebedev: Agile Testing Using Agile Tools
Dmitry Lebedev: Agile Testing Using Agile ToolsDmitry Lebedev: Agile Testing Using Agile Tools
Dmitry Lebedev: Agile Testing Using Agile ToolsAgile Lietuva
 

Similar to NocInformatyka2022.pdf (20)

Iron Languages - NYC CodeCamp 2/19/2011
Iron Languages - NYC CodeCamp 2/19/2011Iron Languages - NYC CodeCamp 2/19/2011
Iron Languages - NYC CodeCamp 2/19/2011
 
Building Open-source React Components
Building Open-source React ComponentsBuilding Open-source React Components
Building Open-source React Components
 
Building Open-Source React Components
Building Open-Source React ComponentsBuilding Open-Source React Components
Building Open-Source React Components
 
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
 
Cucumber presenation
Cucumber presenationCucumber presenation
Cucumber presenation
 
これからのPerlプロダクトのかたち(YAPC::Asia 2013)
これからのPerlプロダクトのかたち(YAPC::Asia 2013)これからのPerlプロダクトのかたち(YAPC::Asia 2013)
これからのPerlプロダクトのかたち(YAPC::Asia 2013)
 
Three Ruby usages
Three Ruby usagesThree Ruby usages
Three Ruby usages
 
Onivim: Modal Editing from the Future
Onivim: Modal Editing from the FutureOnivim: Modal Editing from the Future
Onivim: Modal Editing from the Future
 
Road to sbt 1.0 paved with server
Road to sbt 1.0   paved with serverRoad to sbt 1.0   paved with server
Road to sbt 1.0 paved with server
 
Puppet Development Workflow
Puppet Development WorkflowPuppet Development Workflow
Puppet Development Workflow
 
Ruby performance - The low hanging fruit
Ruby performance - The low hanging fruitRuby performance - The low hanging fruit
Ruby performance - The low hanging fruit
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matter
 
Expert JavaScript Programming
Expert JavaScript ProgrammingExpert JavaScript Programming
Expert JavaScript Programming
 
Debugging Rails 3 Applications
Debugging Rails 3 ApplicationsDebugging Rails 3 Applications
Debugging Rails 3 Applications
 
Introducing Yeoman 1.0 beta
Introducing Yeoman 1.0 betaIntroducing Yeoman 1.0 beta
Introducing Yeoman 1.0 beta
 
Power Leveling your TypeScript
Power Leveling your TypeScriptPower Leveling your TypeScript
Power Leveling your TypeScript
 
The Mysteries Of JavaScript-Fu (@media SF Edition)
The Mysteries Of JavaScript-Fu (@media SF Edition)The Mysteries Of JavaScript-Fu (@media SF Edition)
The Mysteries Of JavaScript-Fu (@media SF Edition)
 
Dmitry Lebedev: Agile Testing Using Agile Tools
Dmitry Lebedev: Agile Testing Using Agile ToolsDmitry Lebedev: Agile Testing Using Agile Tools
Dmitry Lebedev: Agile Testing Using Agile Tools
 
Why Ruby?
Why Ruby? Why Ruby?
Why Ruby?
 
Concurrency in ruby
Concurrency in rubyConcurrency in ruby
Concurrency in ruby
 

More from Adam Przybyła

Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...
Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...
Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...Adam Przybyła
 
Aby wąż giętki robił to co wymyśli głowa, czyli słów kilka o analizie leksyk...
Aby wąż giętki robił to co wymyśli głowa,  czyli słów kilka o analizie leksyk...Aby wąż giętki robił to co wymyśli głowa,  czyli słów kilka o analizie leksyk...
Aby wąż giętki robił to co wymyśli głowa, czyli słów kilka o analizie leksyk...Adam Przybyła
 
SELinux, czyli zero-zero-day exploits - DWO 2013
SELinux, czyli zero-zero-day exploits - DWO 2013SELinux, czyli zero-zero-day exploits - DWO 2013
SELinux, czyli zero-zero-day exploits - DWO 2013Adam Przybyła
 
Humanista w twoim linuksie
Humanista w twoim linuksieHumanista w twoim linuksie
Humanista w twoim linuksieAdam Przybyła
 
Open Source i nowe technologie, czyli trochę o systemach o dużej niezawodności
Open Source i nowe technologie, czyli trochę o systemach  o dużej niezawodnościOpen Source i nowe technologie, czyli trochę o systemach  o dużej niezawodności
Open Source i nowe technologie, czyli trochę o systemach o dużej niezawodnościAdam Przybyła
 

More from Adam Przybyła (6)

Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...
Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...
Koniec testowania na sposób “testerski”. Zmiana paradygmatu testowania oprogr...
 
Aby wąż giętki robił to co wymyśli głowa, czyli słów kilka o analizie leksyk...
Aby wąż giętki robił to co wymyśli głowa,  czyli słów kilka o analizie leksyk...Aby wąż giętki robił to co wymyśli głowa,  czyli słów kilka o analizie leksyk...
Aby wąż giętki robił to co wymyśli głowa, czyli słów kilka o analizie leksyk...
 
SELinux, czyli zero-zero-day exploits - DWO 2013
SELinux, czyli zero-zero-day exploits - DWO 2013SELinux, czyli zero-zero-day exploits - DWO 2013
SELinux, czyli zero-zero-day exploits - DWO 2013
 
Mikstura it2013
Mikstura it2013Mikstura it2013
Mikstura it2013
 
Humanista w twoim linuksie
Humanista w twoim linuksieHumanista w twoim linuksie
Humanista w twoim linuksie
 
Open Source i nowe technologie, czyli trochę o systemach o dużej niezawodności
Open Source i nowe technologie, czyli trochę o systemach  o dużej niezawodnościOpen Source i nowe technologie, czyli trochę o systemach  o dużej niezawodności
Open Source i nowe technologie, czyli trochę o systemach o dużej niezawodności
 

Recently uploaded

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

NocInformatyka2022.pdf

  • 1. Mission ImpAnsible - NSM at (RobotFrame)work Noc Informatyka – Kraków 2022 Adam Przybyła <adam.przybyla@gmail.com>
  • 2. In the beginning was the word
  • 3. And now it’s time to switch to GUI ● C64 was old and games were hard ● Arexx – script language ● Amiga CLI ● GNU with problems
  • 4. 42 Answer to the Ultimate Question of Life, the Universe, and Everything
  • 5. What is a Robot Framework? ● Open Source ● Generic test automation framework ● License ● Editors ● Python support
  • 6. Why to use Robot Framework? ● High level keywords ● Logging ● Reports ● Data driven test cases ● Behavior-driven style test cases ● Tagging ● Easy to include in your continous integration system ● Ubiquous language
  • 8. Ubiquitous Language is the term Eric Evans uses in Domain Driven Design for the practice of building up a common, rigorous language between developers and users. ... Evans makes clear that using the ubiquitous language in conversations with domain experts is an important part of testing it, and hence the domain model.
  • 9.
  • 10. Who is an admin? ● More Commands per sec ● let’s make a robot – what could be wrong? ● Reboot fix ● Logs, logs everywhere … ● Admins do nothing
  • 12. Five clouds is enough
  • 14. Text, text, text ... ● Linux as text processing system ● Compilers, compilers and compilers compilers ● Python - scripts ● Robot Framework ● Humanities – languages related science ● Everymany knows computers ● Natural language can be accurate ● Natural Semantic Metalangue ● We can copy all data to the cloud ...
  • 15. [adam@tao ~]$ find /bin/ /sbin/|xargs -l1 file|cut -f2 -d:|cut -f1 -d,|sort |uniq -c| grep -v "symbolic link"|sort -rn 1538 ELF 64-bit LSB executable 523 ELF 64-bit LSB shared object 485 Python script 287 POSIX shell script 71 Perl script 68 Bourne-Again shell script 20 ELF 32-bit LSB executable 17 setuid ELF 64-bit LSB shared object 10 setgid ELF 64-bit LSB shared object 8 regular file 4 setuid executable 3 setgid executable 3 C++ source 2 directory 2 a /usr/bin/sh script 1 setuid regular file 1 Palm OS dynamic library data "#!/bin/sh" 1 Lua script 1 executable [adam@tao ~]
  • 16. NSM and Impansible library ● Impansible for ansible components usage ● Ansible meta classes replacement ● NSM – robot framework examples ● Scripts for Appium, Selenium, Jenkins, Sonar ● Few languagess scripts ● Easter egg ;-)
  • 18. *** Settings *** library Impansible library Collections *** Test Cases *** test 1 ${x}= Setup localhost log to console ${x} ${y}= get from dictionary ${x} ansible_facts ${h}= get from dictionary ${y} ansible_hostname ${z}= get from dictionary ${y} ansible_distribution Should be Equal ${z} Ubuntu Should Contain ${h} tester test 2 ${x}= apt localhost package=mtr state=present ${x}= get from dictionary ${x} invocation ${y}= get from dictionary ${x} module_args ${s}= get from dictionary ${y} state Should be Equal ${s} present test 3 ${x}= apt localhost package=mtr state=absent ${x}= get from dictionary ${x} invocation ${y}= get from dictionary ${x} module_args ${s}= get from dictionary ${y} state Should be Equal ${s} absent test 4 ${c}= get certificate localhost host=www.onet.pl port=443 proxy_host=10.1.1.1 ${e}= get from dictionary ${c} expired Should not be True ${e} Impansible
  • 20. *** Settings *** Resource NSM.robot Metadata Author Adam Przybyla *** Test Cases *** Test 1 Teraz jest tak: ja widzę webpage Ja nie widzę słowa logged na webpage Potem ja użyję słów credentials na webpage Z tego powodu ja widzę słowa logged na webpage Niedługo potem ja nie widzę webpage Test 2 Teraz jest tak: ja widzę webpage Ja nie widzę słowa logged na webpage Potem ja użyję słów bad credentials na webpage Z tego powodu ja nie widzę słowa logged na webpage Niedługo potem ja nie widzę webpage Test 3 Teraz jest tak: ja widzę webpage Ja nie widzę słowa logged na webpage Niedługo potem ja nie widzę webpage
  • 21. *** Settings *** Resource NSM.robot Metadata Author Adam Przybyla <adam.przybyla@gmail.com> *** Test Cases *** Test 1 It is like this now: I see the webpage I not see words logged on the webpage then i use the words credentials on webpage because of this: I see words logged on the webpage after this i see the webpage no more Test 2 It is like this now: I see the webpage I not see words logged on the webpage then i use the words bad credentials on webpage because of this: I not see words logged on the webpage after this i see the webpage no more Test 3 It is like this now: I see the webpage I not see words logged on the webpage after this i see the webpage no more
  • 22. *** Settings *** Resource NSM.robot Metadata Author Adam Przybyla *** Test Cases *** 测试 1 现在是这样的:我看到 webpage 我在 webpage 上看不到 logged 单词 然后我在 webpage 上使用 credentials 单词 因此我在 webpage 上看到 logged 单词 在此之后,我不再看到 webpage 测试 2 现在是这样的:我看到 webpage 我在 webpage 上看不到 logged 单词 然后我在 webpage 上使用 bad credentials 单词 因此我在 webpage 上看不到 logged 单词 在此之后,我不再看到 webpage 测试 3 现在是这样的:我看到 webpage 我在 webpage 上看不到 logged 单词 在此之后,我不再看到 webpage
  • 23. Future ● Falsification? ● Research program ● More meta components ● No statistics ● Time to use methapors ● Texts for not technical users
  • 24.
  • 25.