segron logo

The Telco Operator’s Guide to Test Case Scripting

One of the biggest concerns we hear from telco operators looking to automate their tests is the relative ease or difficulty of test case scripting. Telecoms aren’t typically staffed with a huge number of technically proficient developers, and a complex testcase scripting language would therefore make it difficult to leverage non-technical personnel in the testing process.

This is an eminently reasonable concern. After all, the fewer people there are in your organization who can understand the tests being performed, the more likely you are to find yourself saddled with a testing silo—which could potentially lead to slower bug fixes and poor alignment between testing and other functions.

The antidote to this potential pitfall is to choose an automation framework where testcase scripting is easy and straightforward. Even then, however, you might have some questions about how test scripting will work within the context of your automation solution.

This is totally reasonable—and it’s why today we’ll be taking a deeper look at testcase scripting in an automated telco testing environment, taking keyword-based testing as an example of a low-barrier scripting scenario.

Robot Framework for Testing

Now, first things first: what are keyword-based tests, and why are we advocating for them? Simply put, keyword-based tests allow you to execute tests from the command line or a graphical user interface using libraries of pre-defined keywords that can remotely control specific network elements.

Crucially, these keywords can be orchestrated together (i.e. they can interact and be combined into higher-abstraction keywords); the keyword libraries communicate directly with the system under test (SUT) to verify functionality and produce test reports.

One of the most popular frameworks for this kind of testing is Robot Framework, which describes itself as “a generic open source automation framework for acceptance testing, acceptance test driven development (ATDD), and robotic process automation (RPA).”

Though it has typically gotten wider play in the world of software testing, it obviously applies to telecom acceptance testing just as easily. In Robot Framework (and platforms that run on it), users organize different keywords into test suites, which they can then execute in order to verify functionality.

For example, a tester testing out login functionality for a mobile app would define her variables based on existing keywords, then enter the relevant commands into the command line.

From there, the test suite would be run automatically, and an HTML or XML-based test report would be returned, showing metadata about the test suite and a list of the relevant steps, e.g.:

  • Open browser at login page
  • Input username and password
  • Click submit
  • View account home page
  • Close browser

From there, you could drill down on the elements that passed and failed, all at the desired level of abstraction. For a relatively non-technical user, this means that you could still understand what had happened on the level of the different elements—while a technical user could find much more granular detail as needed.

Scripting Telecom Use Cases

Okay, but what happens when we apply this kind of framework to a telecom test environment? Well, things work essentially the same way. Testers can either create a library from scratch or use an existing library that’s already populated with relevant keywords, and from there it’s just a matter of organizing them into test suites and executing those suites as needed.

If, for instance, you were testing a call between a mobile subscriber and a PSTN user, you would define the A and B parties for the call based on specific variables.

You might have a keyword, “Initiate Device”, that’s then attached to a test phone variable, PSTN_A; and you would do the same for your mobile subscriber, MS_B. With the variables established, you would execute the test call by adding “Dial And Call” into the test script and running it.

The scripts aren’t just easy to use, they’re easy to reuse.

Crucially, these keywords and variables are all maintained in global files, such that testers can make necessary changes to individual keywords without having to laboriously go through the test library and update each mention of a given element manually.

This means that the scripts aren’t just easy to use, they’re easy to reuse. This, on its own, can act as a huge time saver. How? By radically reducing the time required for test maintenance. In the example in the previous section, for instance, adding a Captcha or a check box to the login workflow test (by changing the keywords accordingly) wouldn’t require a complete revision of all the relevant testcases and test suites.

Instead, the change would be applied across the relevant libraries automatically, meaning that testcases and test suites could be performed as usual even after a network change or other new development.

How Your Test Scripts Impact Reporting

One of the ways in which easy test scripting adds value is its ability to make the testing process accessible beyond its usual boundaries. But how valuable is that accessibility if it doesn’t extend to the aftercare that follows each round of testing?

The answer: not very. For this reason, reporting is an equally important consideration for telco testers seeking out a potential automation solution—and it’s a consideration that goes hand in hand with testcase scripting. Why? Because the two are directly linked.

Like we discussed above, in Robot Framework the keywords used to run tests are the same keywords that populate the reports, making them just as readable as the scripts themselves. This lays the foundation for highly readable reports that offer different levels of granularity as needed.

At the most abstract level, you should be able to see how many tests were run, how many tests failed, and what the overall testing time was. A layer beneath that, you can see the relevant information for each individual test case, including runtime and passage/failure.

Even further, a really sophisticated solution will provide you information about what’s happening on a protocol level to the system under test.Again, these will be based on the keywords established in your libraries, offering a level of consistency and visibility that would be hard to come by otherwise.

In this way, you reach root causes faster and keep the entire organization up-to-date on the state of your network.

 

Search

Interested in our Products ?

Scroll to Top
Segron logo black blue

Senior SaaS System Administrator

Technical Skills :
  • Oversee the sysadmin related tasks in our SaaS infrastructure (partially cloud based, partially bare metal)
  • Daily operation and maintenance of the system
  • Analysing and resolving incidents
  • Follow and help improving the incident and change management procedures
  • Design procedures for system troubleshooting and maintenance
  • Incorporating base OS updates and security patches
  • Ensure that systems are safe and secure against cybersecurity threats by raising change requests where potential threat is possible
  • Performing SW updates for the Segron SaaS SW stack (distributed architecture with clusters)
  • Configuring solutions like reverse proxy, firewalls, etc.
  • Building tools to automate procedures & reduce occurrences of errors and improve customer experience
  • Tutoring & coaching newcomers & less senior experts in the team
  • Interworking with the architects and IT admins of Segron to have the SaaS procedures inline with the Segron processes
Non-technical skills:
  • We are looking for a self-motivated, self-improving individual with a highly independent mindset and open and straightforward technical communication to help us to improve and maintain our cloud infrastructure of our powerful end-to-end testing solution ATF (Automated Testing Framework)
  • 3+ years hands-on experience with operation and monitoring of cloud / linux systems
  • 3+ years of hands-on experience with network devops elements: configuring routers, switches, networks
  • Hands-on experience with running live systems with infrastructure as a code mode of operation
  • Specific knowledge which brings direct advantage: Docker, Docker Compose, Grafana, Prometheus, Ansible, Debian Linux OS administration, Security
  • Experience in building and maintaining distributed systems (incl. redundancy, resiliency, load-balancing) is welcome
  • Excellent knowledge of English
Location :
  • Place of work: Bratislava (partially home office possible)
  • Rate: from 30 EUR/hour (possible higher rate, depends on experience)
Segron logo - The Next Generation of Active Testing
Segron logo black blue

CI/CD Senior Developer

Technical Skills :
  • A senior role with a proven expertise in software development, cloud computing, DevOps, and CI/CD
  • Experience in planning, designing, and overseeing the CI/CD strategy and architecture on the level of organization
  • Ability to tailor testing strategies which define and follow the best practices, standards, and policies for the software delivery process
  • Hands-on experience in creating and managing CI/CD pipelines and workflows (PaaC)
  • Ability to evaluate and recommend the best tools, technologies, and methodologies for the CI/CD implementation
  • Prior hands-on experience working with different CI/CD toolsets (Jenkins, Bitbucket, GitLab, artifactory, Ansible ..)
  • Proficient with DevOps tools API automation capabilities
  • Proficient with Atlassian Tools (BitBucket, Jira, Confluence) and agile SW development methodologies
  • Familiar with cloud patterns and best practices
  • Familiar with web performance best practices
  • Comfortable working in cloud DevOps ecosystem
  • Comfortable working with Linux platforms
  • Initial working experience in SW development is an advantage.
Non-technical skills:
  • Effective communication with technical as well and business stakeholders
  • Self-motivating, self-improving mindset
  • Ownership of relevant industry certificates is a plus
Location :
  • Location: Bratislava, Slovakia (with hybrid flexibility)
  • Rate: from 30 EUR/hour (possible higher rate, depends on experience)
Segron logo - The Next Generation of Active Testing
Segron logo black blue

Test Automation Engineer

Job description, responsibilities:

  • ATF system configuration, integration, operations & maintenance in customer environments.
  • Building tools to automate procedures & reduce occurrences of errors and improve customer experience.
  • Hardware Verification, Testing and Preparation within the Staging Process.
  • Contribution to customer and service partner technical support across multiple accounts by sufficiently managing priorities and deadlines for own work.
  • Segron Laboratory equipment configuration and maintenance support.
  • Hardware order and logistics support.
  • Problem analysis of ATF issues, troubleshooting and fault correction.
  • Interface towards SEGRON Development Team in case of product or software issues.
  • Interface towards the SEGRON Technical Sales Team to support planned activities.
  • System and Integration documentation and guidelines.
  • Perform root cause analysis for production errors.
  • Deployment of software updates and fixes.
  • Ability to work in a team environment serving multiple global customers.
  • Willing to travel for 3-5 days onsite deployments
Requirements/ Skills:
  • Excellent knowledge of English
  • Operating Systems: Linux, Windows, MacOS
  • Good Knowledge of Containers and Virtual Machines
  • Telco experience welcome
  • Python or other scripting experience or knowledge preferable
  • Educational Qualification: Computer Science/Engineering or work experience equivalent
  • Work Experience: 3-4 years preferred

Others:

  • Full time job (employment)
  • 3 days onsite, 2 days home office
  • Offered salary: from 1800 Euro (depends on seniority and skills level)
  • Variety of financial benefits
  • Place of work: Bratislava
Segron logo - The Next Generation of Active Testing
Segron logo black blue

Senior Python Developer

Technical Skills :

  • A solid, experienced SW developer with at least 10 years of experience in active SW development in different programming paradigms
  • Minimum 5 years of professional Python development experience
  • Master or college degree from Computer Science, Mathematics or STEM domain
  • Well educated in design and programming patterns that increase software’s efficiency and readability.
  • Very good analytical and problem solving skills.
  • At least three skills out of the following 4 skills are requested:
    • Microservices based architectures (Docker containers)
    • Linux
    • Ansible
    • Robot  Framework
  • Comfortable with sysadmin and DevOps skills (Ansible, YML files, Network Programming, IP protocols, designing and developing proxy servers for different protocols – example: streaming, integrating and compiling third party libraries on Linux (Debian))
  • Proficient with Atlassian Tools (BitBucket, Jira, Confluence) thorough understanding of Git and version control best practices
  • Familiar with cloud patterns and best practices
  • Familiar with web performance best practices

Non-technical skills:

  • Ability to work under pressure
  • Ability to abstract and explain your work
  • Strong understanding of Agile development process and experience working in an agile team
  • Strong communication skills with both technical and non-technical stakeholders
Location :
  • Bratislava, Slovakia (with hybrid flexibility)
  • Rate: from 35 EUR/hour (possible higher rate, but depends on experience)
Segron logo - The Next Generation of Active Testing