Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Process Automation using Python

Process Automation using Python

Exactpro

June 20, 2023
Tweet

More Decks by Exactpro

Other Decks in Technology

Transcript

  1. 1 BUILD SOFTWARE TO TEST SOFTWARE BUILD SOFTWARE TO TEST

    SOFTWARE exactpro.com Process Automation using Python ease and streamline repetitive tasks that daily routine entails 15 JUNE 2023
  2. 2 BUILD SOFTWARE TO TEST SOFTWARE © Sweigart, A. (2019).

    Automate the boring stuff with python. “You’ve just done in two hours what it takes the three of us two days to do”
  3. 3 BUILD SOFTWARE TO TEST SOFTWARE 3 BUILD SOFTWARE TO

    TEST SOFTWARE Process Automation Presentation Roadmap 1 3 4 2 Importance and advantages of using Python for automation (why to automate) Exploring the Power of Python (what to automate) Techniques and tools for process automation using Python (how to automate) Future scope of process automation and AI (what are limitations)
  4. 4 BUILD SOFTWARE TO TEST SOFTWARE 4 BUILD SOFTWARE TO

    TEST SOFTWARE Human judgement/critical thinking • interpreting the data • identifying trends • making strategic decisions • ensuring the accuracy of results Importance of process automation Technology • data collection • aggregation • initial analysis +
  5. 5 BUILD SOFTWARE TO TEST SOFTWARE Importance of process automation

    • Business Process Automation • RPA (Robotic Process Automation) • Intelligent Process Automation Hyperautomation leads to: ✔ Less prone to human errors ✔ Improved Productivity ✔ Rapid Reactions ✔ Cost Savings ✔ Data-Led Insight ✔ Customer satisfaction TensorFlow, PyTorch, and scikit-learn
  6. 6 BUILD SOFTWARE TO TEST SOFTWARE Advantages of using Python

    for automation • general-purpose • Interpreted • Interactive • object-oriented • high-level programming language • dynamically typed • garbage collected
  7. 7 BUILD SOFTWARE TO TEST SOFTWARE Readability and Simplicity •

    simple and concise keywords (i.e, if, else, for, while, and def convey their purpose clearly) • utilizes whitespace indentation instead of curly brackets to indicate code blocks • readable Data Structures: Python provides built-in data structures like lists, dictionaries, and sets that are easy to read and understand. Example of lists, list comprehension, sorting, summation, and conditional statements in just several lines of code
  8. 8 BUILD SOFTWARE TO TEST SOFTWARE Broad Range of Libraries

    Pandas – data manipulation BeautifulSoup, PyQuery – web scrapping NumPy, SciPy – scientific computing Selenium, Pyppeteer – web testing Paramiko – SSH automation Why use libraries: 1) abstract away the complexity of low-level tasks 2) predefined functions encapsulate complex operations 3) well-defined interfaces and reusable component
  9. 9 BUILD SOFTWARE TO TEST SOFTWARE Platform Independence • Run

    on various OSs (Windows, Linux, macOS…) Integration Capabilities • robust support for APIs and can communicate with databases, web services, and external applications • extensibility allows to wrap functionality from C/C++ libraries or leverage Python's inter-language communication capabilities
  10. 10 BUILD SOFTWARE TO TEST SOFTWARE Community and Support •

    Python Package Index (PyPI) hosts thousands of open-source libraries and packages that can be installed using tools like pip • Open source contributions • Documentation (docs.python.org), forums and tutorials • Community-driven Initiatives e.g., Python Enhancement Proposals (PEPs) • StackOverflow
  11. 11 BUILD SOFTWARE TO TEST SOFTWARE Goes beyond game of

    Tic Tac Toe 1. File handling and manipulation (Regex, edit files in more efficient ways) 2. Data Manipulation and Analysis 3. Web Scraping and Automation 4. Email and Communication 5. Text Processing and Natural Language Processing (NLP) - NLTK (Natural Language Toolkit), spaCy, and scikit-learn, that offer pre-built models and tools 6. Data Scraping and APIs Exploring the Power of Python (what to automate)
  12. 12 BUILD SOFTWARE TO TEST SOFTWARE 12 BUILD SOFTWARE TO

    TEST SOFTWARE Edit files in more efficient ways using Regex used with the re module, which provides functions and methods for working with regular expressions
  13. 13 BUILD SOFTWARE TO TEST SOFTWARE Techniques and tools for

    process automation using Python (how to automate) 1. Pandas for data processing and analysis 2. Selenium for web automation 3. Numpy and SciPy for scientific computations 4. Flask and Django web frameworks 5. Requests and pyserial for API automation 6. PyAutoGUI for desktop automation 7. parallelism and concurrency `multiprocessing` and `asyncio` 8. Playwright 9. Robot Framework 10. ….
  14. 14 BUILD SOFTWARE TO TEST SOFTWARE 14 BUILD SOFTWARE TO

    TEST SOFTWARE Demo Code snippets of practical examples
  15. 15 BUILD SOFTWARE TO TEST SOFTWARE 15 BUILD SOFTWARE TO

    TEST SOFTWARE Verhoeven, P. (1987). RoboCop. Self driving car Balance Automation And The Human Touch Modern day Golden Ratio problem