I have written quite a few Ruby programs for my clients test automation project.But the problem is my client wants to check the output to his PC without instilling ruby.He is asking me to make one web application where he can select functionality from drop down and run the automation by clicking run button.And after completion the test it will auto generate a test result.Is there any possible way to do so?
Would recommend a CI like environment. You could setup the scripts to run either on a per job basis, or allow the job to accept a parameter that your client specifies to run the script he wants to run. The output will be displayed in the CI console, so he can check it on his own. Ruby and the scripts would only have to be installed on the CI server.
Thoughtworks Go is a product that does exactly what you are after, and is commonly used in Continuous Delivery environments. The community version is free and might meet your needs.
(I have no affiliation with ThoughtWorks).
The generally accepted answer to 'doesn't run on my machine' is to set up Continuous Integration, i.e. 'run it in the cloud'.
You push your code to a cloud environment that is set up with ruby and you run it there. You can do this with master and/or development branches. You could modify the solution to run specific branches, perhaps using tags (that you would have to add) to identify those tests. So you create the branch or script with tags and then your client uses the result to run specific tests they are interested in.
Commonly used tools to help do this include:
- CircleCI (my favorite)
- Azure Devops (the Microsoft solution)