Access to the page body from selenium - selenium

I want to create Selenium test that posts web form, but one field is riddle from the list. Riddle gets randomly. Answers are known. I should fill answer in field.
Is it possible to access in Selenium test to the page source code to define current riddle and place in the input field answer?

Certainly. For example, in Ruby bindings it'd be #browser.page_source

Related

How to set using tag and id as default for Katalon Studio record function?

Currently the record function in Katalon studio uses all possibilities to identify an element (i.e. tag, id, name, class, text and full XPath). For some reason the full XPath always fail to identify an element in actual testing, and text on element is something that changes a lot and does not matter to the testing in most case. Currently I need to manually unset the unnecessary identifier after each record. Is there a way I can tell the record function to use only tag and id to identify an element?
I found this answer from Katalon Forum. So as they said, this features will be implemented in later releases.
https://forum.katalon.com/discussion/4368/how-does-katalon-studio-decides-which-identifier-to-be-used-while-automating-tests#latest

How to check in jmeter if entered fields remain same in the first page after navigating back from nth page

I want to test a page.Where i want to fill up the fields like first name last name etc.and after going two pages further if i come back to the original page by using back navigation ,data entered for first name and last name remains the same.or it is filled up.
In jmeter i want to check the same if data entered for the fields remain same if i navigate back .
How can i achieve this.
I tried gving url directly in the path its not happening since it is not the way.
please help me since i'm new to jmeter.
You need to understand 2 things. How JMeter works and how your application works.
JMeter only captures data that is communicated to server. It does not matter how data is entered from UI. It does not check if data retains in the fields or not. It only records the request that is sent by your application to server-side.
So, if you understand above, you also need to understand how your application sends data to server. Does it sends the request as you move from first page to second. Or does it send (Submit) data on final page.
Either way, JMeter is not a tool to test if your form fields are retaining data in them as you navigate between pages. As mentioned earlier it only monitors data requests/responses.
Selenium seems a better option for your test requirement.
Please read the apache documentation carefully:
JMeter is not a browser. As far as web-services and remote services are concerned, JMeter looks like a browser (or rather, multiple browsers); however JMeter does not perform all the actions supported by browsers. In particular, JMeter does not execute the Javascript found in HTML pages. Nor does it render the HTML pages as a browser does (it's possible to view the response as HTML etc., but the timings are not included in any samples, and only one sample in one thread is ever viewed at a time).
First, you have to understand how JMeter works!!! To do the Functional Testing, Selenium would be a good choice.
Thanks

Sharepoint 2010 and infopath - access workflow variables?

I have a workflow which runs every time a new list item is added.
The list item comprises of 3 fields:
a question,
a person to answer the question,
an answer.
The first 2 fields are supplied by the user who creates the list item, and the workflow routes the item to the expert who supplies #3, the answer.
On the answer form, I would like the question field to be populated with the question, however I can't drag the question field onto the form without it creating a repeating section, when it should be creating a textbox? It says the type is a group rather than just a string?
I'd also like to know how to get workflow variables into InfoPath forms.
Any ideas on how I'd go about creating a simple q&a collection workflow would be most appreciated.
The tl;dr part is the workflow needs to do this :
ask a question and specify a named user
route to user via workflow
get an answer from user
and that's it.
Your first issue is caused by the fact that your question node is a repeating node in your xml schema (see Data, Show fields, then double click the node and see that the Repeating check box is ticked). I suspect you probably wanted a repeating group with Question and Answer nodes. You would then drag the group onto the form. However it might be easier to simply hard code your schema to a specific number of questions as it'll save a bit of jiggery pokery getting the question text loaded in as you'll see below.
The second part is a little more involved and there are few good explainations on the web on how to do it. I have 2 books and neither are great at explaining this! Firstly you need to create a secondary datasource in the form and link it to an ItemMetadata.xml file which contains
<z:row xmlns:z="#RowsetSchema" ows_Question1="" />
<z:row xmlns:z="#RowsetSchema" ows_Question2="" />
etc. - note no root node exaclty like shown.
Then in your workflow you can set the value that your form will get in this secondary datasource at runtime by using something like:
MyFirstTaskTaskProperties.ExtendedProperties["Question1"] = "The text
of question 1";
In your infopath form you should set the default value of Main datasource question field to the node in the secondary datasource. Then when the thing runs it will work.
I hope you are reasonably familiar with SharePoint workflows as there are quite few other things you need to do to get an infopath form working in a workflow. In my experience it's quite painful getting it all working. Good luck my friend.

Need your ideas to automate

In my project we have a web based tool where it collects all the exceptions that occur in log. The list of exceptions will be displayed in table and a icon will be displayed in a column to get the stack trace. Some one needs to check all those exceptions and we need to assign to different teams based on the keywords.
Eg : If the stacktrace contains "DB Connection error" it has to be assigned to DB team, if it contains code error like "classcast exception" in particular file then it has to be assigned to individual owning the module. Currently some one has to open each n every row in the table displayed and open the stack trace and do Ctrl + F and if any of those keywords are found assign it to respective team.
We don't have any access to the tool's database and it's web based. I need some good ideas to automate it. Please suggest me with which technology and idea to automate it.
Sounds like selenium + programming language of your choice is a good fit (even without a selenium).
You need to:
download source code of the page containing exceptions table.
Use any of these: wget, curl, selenium, urllib for python, etc.
put it into variable and extract exceptions list in convenient to you format.
Use any xpath-powered tool, like selenium, lxml for python, etc.
do your thing with the extracted exceptions list: search for keywords, assign tickets, etc.
Use programming language of your choice.
Definitely you can achieve this using selenium.
Following are the steps to follow.
Supply date criteria with type command to the boxes text boxes element.
click search button.
store the required text in variable using storeValue(locator, variableName).
click on image link if you are able to keep track of popup window else you have to use
$second=$sel->getAttribute("//html/body/.../a#href"); and now your $second has link address $sel->openWindow($second,"MyWindow2"); now select that new window $sel->selectWindow("MyWindow2"); and do operation of storing required data from the popup.
Now agian for selection of previous window use `$sel->selectWindow("null"); // hear $sel is object of selenium (i.e. $this).
Select your required option using select(selectLocator, optionLocator).
Use selenium RC for above steps so that you have more manipulation with the data stored and as per requirement operations.
In above steps syntax are of PHPUnit.
Please try the steps may help you.
Regards.

How to store Dynamic Id while using Selenium Commands?

I want to know the process how to store Dynamic Id in my test while using Selenium commands.
Problem:
I have actually on the page where the textarea I want to focus within a test. It has the id like this: id="txt_00092" and it's generated by db auto increment.
It's a comments textarea. Let's say in my test I add a comment over some post. So if I run this test again this becomes 00093. This is where I have a problem as to how to store this dynamic handling in my test.
I hope you understand where I am stuck.
I didn't understand fully your problem. Put down the problem with the ID for know and tell us what is the purpes of the test: Check if the text was fully submited? if so you can type and check if the last(or first, depend on your query oredeing, i.e Asc/DESC) div/td/whatever contains the text.
If you need to chek the ID it's a littel problem becuse here we need to breack the string and do that with JS it's tricky. Hope i help you.
When the Xpaths are dynamically changing, using Xpath this way might work for you:
[starts-with(#id,'txt_0009')]