Solved

Sahi scripting for testing web pages

Posted on 2010-08-24
1
1,123 Views
Last Modified: 2012-05-10
Hi there,

I'm writing a short script  in Sahi (very similar to javaScript) to check that a series of links from a web page appear in the right order.
I have created an array storing the links' names in the order they appear. I'd like to create a second array with Sahi that searches the page gathering links names into another array.
Then I compare these two arrays. Code as follows:

var $Array1 = new Array("3 Face Blend on Mixed Walls", "Assimilation Blend Support", "Detect Loss of Blend Overflow");
function getLinks(){
      var $retVal = new Array();
      var $links = document.links;  
      for (var $i=0; $i<$links.length; $i++){
            $retVal[$i] = $links[$i].innerHTML;  //getText or some other function?
      }                                            //links.getElementById("").innerHTML;
      return $retVal;
}

//importPackage(java.util.Arrays)
var $check = java.util.Arrays.equals($Array1, $retVal); GET ERROR MSG FROM THIS LINE
if($check == false)
      Packages.java.lang.System.out.println("Projects' names don't come in the right order.");
else
      Packages.java.lang.System.out.println("Projects' names come in the right order.");

Whenever I try to run it I get the message "ReferenceError: "$retVal" is not defined" from the line indicated above. It seems that the for loop is not populating the $retVal array. Any ideas?
Thank you,

Ana
0
Comment
Question by:ana-redondo-lopez
1 Comment
 
LVL 3

Accepted Solution

by:
gremwell earned 500 total points
ID: 33509391
$retVal is defined only within the scope of getLinks() function. Also, it appears you not do invoke this function anywhere in your code. You may want to replace the indicated line with something like:

var $Array2 = getLinks();
var $check = java.util.Arrays.equals($Array1, $Array2);
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question