New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Easily creating testruns from inputdata #187
Comments
Hi @JockeJarre, |
Hi, Good you like the idea. I just tested it under py3... sorry for breaking py3 support... |
The excellent datadriver does generate test cases from csv data: https://github.com/Snooz82/robotframework-datadriver Maybe there is a neat setup to run those data driven tests in parallel with pabot. |
I tested robotframework-datadriver, but I do not get it to work together with pabot. The reason is that pabot starts the robot instances with the --Test "Test Name" parameter and robot cannot find the automatically generated tests at this "early stage". I also tested to rewrite robotframework-datadriver to use the --prerunmodifier functionality, but still it is not producing the new tests before the --test parameter kicks in. for this "problem" in robot framework I opened an issue there: robotframework/robotframework#3265 But I really liked the concepts of the robotframework-datadriver, especially when you just have to use it as a library and it dynamically generates your tests with correct names and so on. Pabot does actually understand that there are tests made. |
Hi Guys, Thanks for the flowers! Lets try to bring Datadriver and Pabot together. That i understand what is needed. Or is the issue with datadriver and Pabot, that pabot needs to know the ammount of tests beforehand |
Hi, yes I liked your Robot plugin, I describe something similar in this enhancement proposal against pabot. With your code we would not need the enhancement I did... Yes I want to make a TestLevel split, but here robot itself has a problem with the automatically generated tests and the --test parameter correctly generated by pabot. When --test is used it tries to find the named test which does not yet exist. So I beleive the problem is really with robot and I therefore created the issue described above against robot instead. |
hi, @pekkaklarck came back with his thoughts on why and if to change the -test flag on robot: |
Hi All , We are running the robotframework testsuite in a seperate run template file.py , by importing robot and run function in it . Can we do parallel execution with pabot in this seperate run template file . If so can you please share me the code or the logic where to add this pabot in the run function of robot module Thanks in Advance !!!!! |
Hi All ,
can anyone suggest for pabot ???? |
Well, pabot is meant to be started on the command line shell or cmd in windows. What I am mentioning here was an idea how to make pabot able to read input data and run the tests with that data in parallel, but there is already a nice standard plugin for robot doing this already called https://github.com/Snooz82/robotframework-datadriver by @Snooz82 (René). So we are talking how to make pabot and datadriver work better together. Please remember this is all work done voluntary, so you will get the answer when it comes. |
Hello, I have tested your changes in pabot @mkorpela and datadriver @Snooz82. I guess we can close this issue as solved. We have a much more flexible solution than the POC I created! Thanks for your support both! /Richard |
Yes. Lets close it. |
Ok. Closing in 5, 4, 3, 2, 1 |
I am trying to produce automated test runs with different input parameters using pabot.
I found out, by using the argumentfile[0-9] parameter, I can let pabot run the same robot file with the different parameter files read in from the command line.
I wanted to have a more automated function for this, so I created a POC in the fork JockeJarre/pabot.
Now you can specify an argumenttemplate and a csv file with input data.
argumenttemplate.txt
--variable reportname:${reportname} --variable othervalue:${othervalue}
argumentdata.csv
reportname;othervalue\n firstname;othervalue1\n nextname;othervalue2
argumenttemplate.robot
*** Settings ***
*** Variables ***
${reportname} testname
${othervalue} othervalue
*** Test Case ***
Testing argumenttemplate
Log Do something with the values (for example run different reports) ${reportname} ${othervalue}
Command line:
pabotdevel.bat --argumenttemplate argumenttemplate.txt --argumentdata argumentdata.csv --name ArgumentExample argumenttemplate.robot
When run, the CSV file is read, and using the template, it automatically produces many argumentfiles and automatically run all these using the existing functionality.
I do not know if there is a better more simple way of producing the same thing?
The text was updated successfully, but these errors were encountered: