What language (or framework) can i use to build auto do some specific task in a website - automation

I want to write a program to do some specific task in a website (ie: Auto order, auto login and post some comments). But i don't know what language or framework can help me do that.
If you know plase help me.

It sounds like you want to automate some user actions on a website, for that Selenium/Webdriver is the best library/framework if you want to do it on a Desktop or Appium if you want to do it on mobile.
Seeing as you are a beginner I would also recommend to use Python as its not only easy to get started with but its also one of the better languages in current times for anything related to automation.
I actually have multiple playlists that teach:
beginner to senior concepts in Selenium
beginner Appium concepts
how to build an advanced framework in Appium

Related

Alternative to AutoIt that can interact with browser and desktop windows?

I used AutoIT for certain projects where I need to get some info from a text file, then from an Excel file, use it in a web browser, get some info from there, and then use that info in a Oracle project and repeat for n entries. I'm looking for a way to do this with C#, or at least, a better way and found Selenium and Winium, but I can't find enough info about them working together and being able to open Excel and textfiles and such.
Any recommendation on what to use for these scenario? I don't really know much about automation and I'm looking for some guidence in best practices and recommended software.
First you need to assess the coverage of automation that you will be doing. Seems like (for me) is a business process automation which RPA can provide. If majority of the automated tasks are not browser related, then selenium is not the best solution for this.
You can check with UiPath, Automation Anywhere, Blueprism etc.
The tools covers not just browser but anything you can see from your screen and can be executed unattended.
You may check this one out, https://www.uipath.com/rpa/robotic-process-automation

Does Karate.robot supports CI /CD with Bamboo and need visible desktop like Sikuli to run the script?

I used image locators to locate some desktop elements the following question came to my mind that regarding Karate. Robot.
Can desktop script run on VM using CI/CD pipeline? does it need a physical desktop?
Previously I worked on Sikuli that needed a physical desktop if I minimize then the script does not work, is it the same case with Karate. Robot?
As long as you can install Karate on the VM it should be fine. Yes, having to do an RDP session can get complicated. You will need to spend some time to figure this out, but we know teams that have done this. It is also an opportunity for you to contribute some reference material and hopefully code to the community. For example getting different resolutions to work can be a challenge.
If you use the Element.invoke() method (not documented) on elements that support that automation method (e.g. buttons) you don't need the UI to be visible.
All available information can be found in this answer: https://stackoverflow.com/a/65187737/143475
If you have more questions, the best option is to figure this out on your own - and report your findings back here for the benefit of others.

How to write test cases and test steps in redmine

I am working at a company that uses Redmine as the issue tracking tool and for user stories.
I need to design the QA for them. However I didn't find a section where someone can tie a user story or an issue with a test case. I've used to have this functionality on Rally.
Is there a free tool that integrates with Redmine or something like a plugin?
I want the following (or the more the better!)
Description
test steps (input-output)
Status (pass-fail)
Suite name (the suite the test is part of)
Attached issues
Version of SW under test
Thanks in advance
There is a "test case management" section in the Redmine Third Party tools documentation.
thanks for the support.A former colleague brought this to my attention:
https://bitbucket.org/bugzinga/redcase/wiki/Home
One thing I often see is people trying to adapt tools to do things that they were not originally designed for. Redmine is a good tool for issue tracking and is designed mainly to be a project management tool, although it is possible to adapt redmine, I would suggest in this case looking for a dedicated test management tool that has been designed to do that specific job.
I would suggest looking at TestLodge test management tool which I have worked on and is a designed to help you manage and execute your tests but at the same time integrates with Redmine and does things like automatically create tickets whenever a test fails.
By doing this, you are going to benefit from a range of things such as an interface designed for testing that will make you and your team a lot more productive along with a series of reports that will allow you to spot trends within your testing.

Is there an equivalent of Don Libes's *expect* tool for scripting interaction with web pages?

In the bad old days of interactive console applications, Don Libes created a tool called Expect, which enabled you to write Tcl scripts that interacted with these applications, much as a user would. Expect had two tremendous benefits:
It was possible to script interactions that otherwise would have had to be repeated by hand, tediously. A classic example was dialup Internet access hell (from the days before PPP).
It was possible to write scripts to test one's own interactive applications, programmatically, as part of a regression suite.
Today most interactive applications are on the web, not on the console. Hence my question: is there any tool that provides the ability to interact with web pages and web forms programmatically, much as Expect provides the ability to interact with console applications programmatically?
(The closest thing I am aware of is Chickenfoot.)
You might be looking for Selenium
I've used Selenium RC in conjunction with Python to drive web page interactions programmatically. This has allowed me to write pretty extensive user tests in which forms and inputs are driven and their results are measured.
Check out the Selenium IDE on Firefox (as mentioned above). It allows you to record tests in the browser and play them back, either using the IDE itself, or the Remote Control app.
Perl Mechanize works pretty well for this exact issue.
HTTPS and some authentication issues are tricky at times. I will be posting couple questions about those in the future.
I did a ton of Expect work in a former life and always thought Don Libes' Expect book was one of the best-written and most enlightening technical books I'd ever seen.
Hands down I would say that Perl's WWW::Mechanize library is what you want. I note above that you were having trouble finding documentation. There is good documentation for it! Look up the module's distribution on search.cpan.org and see what all is packaged with it. There's a FAQ, Cookbook with examples, etc. Plus I've always been able to get help on the web. If you can't get it here, try at use.perl.org or perlmonks.org. WWW::Mechanize's author, Andy Lester, is present on Stack Overflow. (He's also an all around friendly and helpful guy.)
I believe WWW::Mechanize also has a program that is analogous to Expect's autoexpect program: you set up a proxy process running this program as a server, point your browser to it as a proxy, perform the actions you want to automate, and then the proxy program gives you a WWW::Mechanize program for you to use as a base for your project. (If it works like autoexpect, you will certainly want to make modifications from there.)
As mentioned above, WWW::Mechanize is a browser (to be more exact, it is a web client or http client) that happens to be programmable. The last time I looked, there was even work in progress to make it support JavaScript.
In addition to Selenium, if you're doing the Ruby/Rails thing, there's Webrat.

Tools for automating mouse and keyboard events sent to a windows application

What tools are useful for automating clicking through a windows form application? Is this even useful? I see the testers at my company doing this a great deal and it seems like a waste of time.
Check out https://github.com/TestStack/White and http://nunitforms.sourceforge.net/. We've used the White project with success.
Though they're mostly targeted at automating administration tasks or shortcuts for users, Autohotkey and AutoIT let you automate nearly anything you want as far as mouse/keyboard interaction.
Some of the mouse stuff can get tricky when the only way to really tell it what you want to click is an X,Y coordinate, but for automating entirely arbitrary tasks on a Windows machine, it does the trick.
Like I said, they're not necessarily intended for testing purposes, so they're not instrumented for unit test conventions. However, I use them all of the time to automate stuff that isn't testing related.
You can do it programmatically via the Microsoft UI Automation API. There's an MSDN Magazine article about it.
Integrates well with unit test frameworks. A better option than the coordinate-based script runners because you don't have to rewrite scripts when layouts change.
There's a couple out there. They all hook into the windows API to log item clicks, and then reproduce them to test.
We're now mostly web based (using WatiN), but we used to use Mercury Quicktest.
Don't use Quicktest, it's awful for a tremendously long list of reasons.
This is what i was looking for.
Check out http://www.codeplex.com/white and http://nunitforms.sourceforge.net/. We've used the White project with success.