Read the most frequently asked 52 top Silk Test interview questions and answers PDF for freshers and experienced.
Silk Test Interview Questions and Answers PDF Experienced Freshers
1 :: What is SilkTest?
SilkTest is a software testing automation tool developed by Segue Software, Inc.
2 :: What is SilkTest Host?
SilkTest Host is a SilkTest component that manages and executes test scripts. SilkTest Host usually runs on a separate machine different than the machine where AUT (Application Under Test) is running.
3 :: What is 4Test?
4Test is a test scripting language used by SilkTest to compose test scripts to perform automated tests. 4Test is an object-oriented fourth-generation language. It consists of 3 sets of functionalities:
1. A robust library of object-oriented classes and methods that specify how a testcase can interact with an application’s GUI objects.
2. A set of statements, operators and data types that you use to introduce structure and logic to a recorded testcase.
3. A library of built-in functions for performing common support tasks.
4 :: What is the VO browser extension?
Virtual Object (VO) browser extension is a SilkTest add-on component for testing Web applications. VO browser extersion uses sophisticated pattern recognition techniques to identify browser-rendered objects. The VO extension sees Web pages as they appear visually; it does not read or recognize HTML tags in the Web application code. Instead, the VO extension sees the objects in a Web page; for example, links, tables, images and compound controls the way that you do, regardless of the technology behind them.
5 :: I have recently encounterd a problem using Silk Test V3. When I record selecting a Menu Item it correctly records eg. Product.File.Exit.Pick()
But when I play it back it just selects the File Menu and fails to select Exit. The File Menu is not dropped, it is just highlighted.
The application is written in Visual C++ and is running on NT 4.
A couple if the menu items to work but that is about 2 out of 15 items. I can work around the problem using the menu short cut keys but would prefer to be simulating using the mouse in some test cases. Any ideas?
I have run into this problem before and it turned out to be a focus problem in the AUT. First, we need to understand how QAP/Silk selects menu items. It doesn't really use the mouse. It uses the key to highlight the menu bar and then arrows to the desired menu item. Try something out: Drive your application to the state before the menu selection. Now manually type F-10 or Alt and see if the menu highlights and allows you to arrow to the menu item. I'm guessing that it is probably a ChildWin or DialogBox that is really holding the focus and not passing the keyboard events to the MainWin. If this is the case, you need to explain to the developers that they need to enable this so that you can continue with your automated testing. A trick around this problem is to do a YourProduct.Click () to force the focus to the MainWin and then do the menu selection (YourProduct.File.Exit.Pick())
6 :: How to close unexpected window?
You meant to say one more browser window (Order Request) appearing apart from original window (Order Status)?
Answer1
If Order Request window is a popup.
Following code closes the active browser window if it is a popup:
[-] !(if Browser.ComboBox("#1").exists())
[ ] Browser.SetActive()
[ ] Browser.typekeys("")
Answer2
If Order Request window is a Browser window.(not a popup)
You can use the following code to close unwanted Browsers(like Order Request)
Order_Status.SetActive()
Browser.CloseOthers()
7 :: What is the best way to create a new test script?
In Automation; creating test scripts involves basically two step:
1. Creating Test Data for all test cases.
2. Writing scripts for automating the test cases.
The first steps, is the outcome of analysis of what all data is required for all of your testcases to be executed. These all should be collected and scripts to be written so that TEST DATA is ready.
The second steps, is basically the test case execution steps automation.
8 :: Is There any function for word count of web page is available in the SilkTest?
You can use Clipboard functions. Get All the contents by Ctrl+a & ctrl+C. Then parse the List of sting ...
9 :: What is SilkTest project?
A SilkTest project is a collection of files that contains required information about a test project.
10 :: Is there any problem in using scripts created on v6.0 to 6.5 or higher versions?
Moving from lower to higher version should not be a problem....
This is a general statement and cannot be true at all instances.
I faced problems with scripts working in 6.5 not running in 7.0 because some of the recognition patterns used each changed. And in some situations, finally landed two paths of the script to perform same action based on version.
PS: Did not encounter any problems from 6.0 to 6.5.
11 :: What is the DOM browser extension?
Document Object Model (DOM) browser extension is a SilkTest add-on component for testing Web applications. DOM browser extension communicates directly with the Web browser to recognize, categorize and manipulate objects on a Web page. It does this by working with the actual HTML code, rather than relying on the visual pattern recognition techniques currently employed by the Virtual Object (VO) extension.
12 :: What is SilkTest Agent?
SilkTest Agent is a SilkTest component that receives testing commands from the SilkTest Host and interacts with AUT (Application Under Test) directly. SilkTest Agent usually runs on the same machine where AUT is running.
13 :: What is the Segue Testing Methodology?
Segue testing methodology is a six-phase testing process:
1. Plan - Determine the testing strategy and define specific test requirements.
2. Capture - Classify the GUI objects in your application and build a framework for running your tests.
3. Create - Create automated, reusable tests. Use recording and/ or programming to build test scripts written in Segue's 4Test language.
4. Run - Select specific tests and execute them against the AUT.
5. Report - Analyze test results and generate defect reports.
6. Track - Track defects in the AUT and perform regression testing.
14 :: How to create a new SilkTest project?
1. Run SilkTest.
2. Select Basic Workflow bar.
3. Click Open Project on the Workflow bar.
4. Select New Project.
5. Double click Create Project icon in the New Project dialog box
6. One the Create Project dialog box, enter your project name, and your project description.
7. Click OK.
8. SilkTest will create a new subdirectory under SilkTest project directory, and save all files related to the new project under that subdirectory.
15 :: What is a SilkTest Testplan?
The SilkTest testplan is an outline that provides a framework for the software testing process and serves as the point of control for organizing and managing your test requirements. A testplan consists of two distinct parts: an outline, which is a formatted description of the test requirements, and statements, which are used to connect the testplan to SilkTest scripts and testcases that implement the test requirements.
16 :: How to get button caption?
Answer1:
Use GetCaption () method......
Answer2:
Either use "sCaption" Property or "GetCaption" Method
Syntax - ControlName.sCaption
or use GetCaption () Method
Syntax - ControlName.GetCaption ()
17 :: What are the types of text lines in a testplan file?
A testplan file contains text lines. There are 5 types of text lines in a testplan file:
1. Comment - Marked in green color: Providing commentary information.
2. Group descriptiton - Marked in black color: Providing descriptions for groups of tests. Tests in a testplan can be grouped into multiple levels of groups.
3.
4. Test description - Marked in blue color: Providing descriptions for individual test.
5. Testplan statement - Marked in dark red color: Providing relations to link scripts, testcases, test data, closed sub testplans or an include file to the testplan.
6. Open subplan file marker - Marked in magenda color: Providing relations to link sub testplans to be included in a master testplan.
18 :: How to add objects of other pages to a test frame?
If your Web application has pages other than the home page, you should also record their page objects into the test frame:
1. Make sure your Web browser is active and showing another page of your Web application.
2. Make sure SilkTest is running.
3. Click File/Open menu.
4. Select your test frame file. For example: HomeFrame.inc.
5. Click OK to open the test frame.
6. Click Record/Window Declarations menu. The Record Window Declarations dialog box shows up.
7. Click your Web application window. Web page objects are recorded in the Record Window Declarations dialog box.
8. Press Ctrl+Alt to pause the recording.
9. Click "Paste to Editor" button. All recorded objects will be inserted into the test frame.
10. Repeat this for other Web pages, if needed.
19 :: What is the syntax of UI object identifier used by DOM extension?
The DOM browser extension uses the following syntax for Web UI objects:
Browser.BrowserChild("page_title").html_class("object_tag")
1. "page_title" is the title of the Web page, defined by the HTML <TITLE> tag.
2. "object_tag" is the label of the HTML element. How a HTML element is labeled depending on the type of HTML element.
20 :: What is stored in a test frame?
A test frame is a text file, which records the following types of information for a Web application:
1. Comment: Commentary information.
2. wMainWindow: A string constant to identify your application's home page.
3. Home page window: An object of class BrowserChild window that holds application home page.
4. sLocation: The URL of the your application's home apge.
5. sUserName and dPassword: User name and password if needed to login to your Web application.
6. BrowserSize: A pair of values to indicate the size of the browser window.
7. Home page objects: A list of all objects on the home page, such as HtmlImage, HtmlText, HtmlLinks, etc.
21 :: Prob regarding close the Child Window
Answer1:
1. Identify the process handle and
2. kill it First child and then the MainWindow.
Answer2:
Integer HWnd=Browser.GetHandle() ///before child popup opens
....then your code
While Browser2.Exists()
{
If Browser.GetHandle()!=HWnd
Browser.Close()
Else
Browser2.SetActive()
}
You can also use window caption in the former code.
Answer3:
I think the tag to identify the parent and child are not unique, that is why the parent is closed...try to make the window id unique and then close the page...
First activate the child using and then close....It should work....
22 :: I am investigating solutions for automating an Invisible Application and believe that using a Grid may solve many of my problems. Does anyone have any experience using this technique with Silk Test or know of any good resources I could contact.?
Answer1:
If you use QA Partner, you should know, what to work it is possible only with one application, because include file (xxxxx.inc) only one. You can work it is possible with different windows, but only from one application.
Answer2:
As far as the QA Partner list - I would say it is dead. The SilkTest list at Onelist.com (this list) is much better anyway, since all the messages are archived for people to go back and search on. Plus, each user can control how they want it - each message or in digest mode.
Answer3:
As I know, you can work with several applications simultaneuosly. QA Partner/SilkTest doesn't limit you from that. You can run into the problem with using the default recovery system for all applications under test, but this problem can be solved too.
23 :: Retrieve text from disable textfield.Silk is not recognizing that disable object. How can I come to a conclusion?
Retrieve text from disable textfield.Silk is not recognizing that disable object. How can I come to a conclusion? I am having a web based application. In one web page there is a radio button.Selection of that radio button open an applet window. Now if I want to take the declaration of that window, It fails to recognise the same.Silk is properly configured to recognise Java based C\S application.How to resolve such issues?
If you want to retrieve data from a disabled textfield, you should first disable the Agent option "OPT_VERIFY_ENABLED" and the you can use GetText. The steps are:
Agent.SetOptions("OPT_VERIFY_ENABLED", false)
Print(TextField.GetText())
And coming to your next question, the answer is same, disable all the Agent options. Steps:
1.In the Options menu, click on Agent menu item.
2. In Agent Options window, click on Verification tab.
3. Uncheck all the options, except the last one (verification of application ready)
4. Click OK.
24 :: How to maintain recovery system?
In your TestCaseExit () function you can incorporate like
If condition == 1
do this
If condition == 2
do that
25 :: What are testplan attributes?
Testplan attributes are user defined characteristics to be associated with test group descriptions and/or test descriptions. You search, identify, and/or report test cases based on values of the different attributes.
26 :: Problem with JavaJFCTable class.
[I am trying to fetch values from a JavaJFCTable. I tried using GetContents, GetSelText, etc functions to retrieve values fromr the table but every time garbage values are retrieved. Has anyone faced such a problem before?
the application is recognized properly with no Custom objects in it.]
27 :: How to write function in inc file?
After you wrote the functions in inc ( eg:- demo.inc) you need to specify them in Use path/Use File
In Silk Test-> Options-> Run time
Specify the inc file path/File name in "Use File" Text box
(or)
Secify the file Path in "Use Path" and added the file name in "Use File" text box
(or)
In your script file add code like
[] use "demo.inc"
and add the inc file path in Silk Test-> Options-> Run time -> Use Path
28 :: How to record a test case?
1. Run SilkTest.
2. Click Option/Runtime menu. The Runtime Options dialog box shows up.
3. Edit the Use Files field to include your test frame file and the exlorer.inc file. For example: ...\HomeFrame.inc,extend\explorer.inc.
4. Make sure IE 5.x DOM is selceted.
5. Click OK to cloase the Runtime Optoins dialog box.
6. Open your test project.
7. Click Record/Testcase menu. The Record Testcase dialog box shows up.
8. Name your test case. For example: LoginTest.
9. Select DefaultBaseState in the Applicatin State dropdown list.
10. Click Start Recording button.The Record Testcase dialog closes. Your Web application is will be automatically started by SilkTest, based on the information in test frame file. SilkTest Editor window closes. The Record Status dialog box shows up.
11. Continue to use your Web application. SilkTest records everything you did on your application.
12. Click the "Done" button on the Recording Status dialog box to stop recording. The Recording Status dialog box closes. The Record Testcase dialog box shows up again.
13. Click Paste to Editor. SilkTest will insert the recorded acitivities as 4Test statements into a script file. The Record Testcase dialog closes.
14. Click File/Save menu to save the script file. You can enter a script file name. For example, LoginTest.t.
29 :: How to write a Masterplan?
[I want many plans and testcases to run by a single file. As Master plan-Sub plan are good medium since it gives me sharing features. Can anybody tell me how to run sub plans from the masterplan with an example.]
Yaa, you can run all your sub-plans using master plan approach.
You just open new plan file and call your subplan/testcase from this file.
if you want to run subplan from master plan then sysntax is like
include: mysubplan.pln
30 :: How to maintain global variable when script is run thru test plans?
Answer1:
This is the feature of Silk Test.
When u declare some global variables and initialize them in a testcase in one .t file, they are not retained to be used in another .t file in a testplan.
Here is the way out ...
Create a file and save the values in this file before u exit from the .t file.
This can be your last testcase in a file.
In the next .t file in the sequence, read this file and initialize global variables again.
This can be your first testcase in the .t file.
Answer2:
try couple of things
1. use environment variable as suggested by an other member of this group
2. copy the variable to the clipboard, every automation tool has a way to write and read content from clipboard which does not effect scope of the script.
Answer3:
I have one more solution for this problem try it out.
External file method (preferably .ini file - use ReadIni (), WriteIni () and few other functions).
Override your TestcaseEnter () and TestCaseExit () functions to get and set variable (reading values should be in called TestCaseEnter () and writing back the values in TestCaseExit ())
Even testcase failure also you will not loose the values
31 :: How can we get the IP address of a PC?
You can use the following
main
[ ] INTEGER iReturn
[ ] STRING sCmdLine = "ipconfig"
[ ] LIST OF STRING lsOutput
[ ] iReturn = SYS_Execute (sCmdLine , lsOutput)
[ ] listprint(lsOutput)
output is
[ ] Windows IP Configuration
[ ] Ethernet adapter Local Area Connection:
[ ] Connection-specific DNS Suffix . : abcd.xyz.net
[ ] IP Address. . . . . . . . . . . . : 1x.2xx.2xx.79
[ ] Subnet Mask . . . . . . . . . . . : 255.255.0.
[ ]Default Gateway . . . . . . . . . : 10.206.1.1
You need to do some trickery to parse and get the IP string..
32 :: Problem with the VerifyBitmap
Using VerifyBitmap function for comparing the Position, Borders, Color etc.
For Example:
Window.VerifyBitmap("Position.bmp",[Rect])
Window.VerifyBitmap("Border.bmp",[Rect])
Window.VerifyBitmap("Color.bmp",[Rect])
Running the script if any one of the verification failed, script is terminating at that point itself, without running remaining lines in the script.
Is it possible to make script run completely even though any of the verification failed? Want to see all the failed verified results in result window.
Answer1:
Put all the verification statements in individual do...except.....You can keep except part blank or display your error message here.....
Answer2:
That is how below three functions will work.
VerifyBitmap()
VerifyProperties ()
Verify ()
that should be last statement of your testcase and cleanup code you put after that but, that will get executed only when testcase pass. You can put it in except block so that it will get executed even testcase fails also Like below
do
//
//
//your statements
//
//
VerifyBitmap()
except
// your remaining statements those need to be executed only when testcase fails.
Or
use SYS_CompareBitmap() instead of VerifyBitmap()
33 :: How to link an error in the result file to the script file?
1. Make sure the Result window is open with result file.
2. Click Results/Pass/Fail Report. The Pass/Fail Report dialog box shows up.
3. Select an attribute on which you want the report to be based on. For example: Component.
4. Click the Generate button.
5. SilkTest generates a report in the Pass/Fail Report dialog box.
6. You can print or export the report.
7. Click the Close button to close the Pass/Fail Report dialog box.
34 :: What are the functions offered by DBTester?
DBTester offers 6 functions. You can use them directly in your test cases:
1. DB_Connect: Opens a database connection linking the data through the specified OBDC DSN name. DB_Connect returns a connection handle which can be used on other DBTester functions. SQL statements can be submitted to the database. For example: con = DB_Connect("dsn=dsn_name")
2. DB_Disconnect: Closes the database connection represented by the speficied connection handle. All resources related to this connect are also released. For example: DB_Disconnect(con)
3. DB_ExecuteSql: Sends the specified SQL statement to the specified database connection for execution. DB_ExecuteSql returns a query result handler which can be used by the DB_FetchNext function. For example: res = DB_ExecuteSql(con, "SELECT * FROM ...")
4. DB_FetchNext: Retrieves the next row from the specified query result handler. For example: DB_FetchNext(res, col1, col2, col3, ...)
5. DB_FetchPrevious: Retrieves the previous row from the specified query result handler.
6. DB_FinishSql: Closes the specified query result handler. For example: DB_FinishSql(res)
35 :: Need help to create Frame Work with Web testing
1) Should I do window declaration for each page
2) Should I do window declaration with multiple tag
3) Which multitag should I choose?
Anwser 1:
1) Should I do window declaration for each page Not necessarily but in most probability, u will have to do it. However, you don't need to declare every object in every page. You need to make use of inheritance so that an object declared in main class can be inherited to sub classes.
2) Should I do window declaration with multiple tag You can use multi tag to declare windows. When I say multi, you can use different captions of the window.
3) Which multitag should I choose Caption
From my experience, this multi tag should be WindowID.
Let me explain,
If you have two instances of the same application running, (obviously, both will have same caption), a conflict arises. In such a situation, Silk Test script fails.
To avoid this condition, Window ID can be used, because, even if two instances are running at a time, the window ID's would still be unique.
Anwser 2:
For Web based windows, dialogs, Window IDs are not much useful. Now silktest is identifying the object's variable name in source code. It will be similar to window ID. For stand alone applications, Win ID will be useful. Even if you look into silktest's INC files, you can see window ID.
While coming to duplicates of windows, then you can use window location, index and window ID. Mostly people are using Index like calc[1],calc[2],#1 and #2. Rarely ID and location (points X&Y) are used. I'm using location to some of modal dialogboxes in our AUT.
36 :: How to create group and sub group descriptions in a testplan? Can SilkTest Verify Locations of Ads?
Yes you can, but.....
The location may vary from 1 system to another? from one resolution to another.
You can use the .GetRect () method. Or you can use the verify properties (hold ctrl-shift while recording testcases)and select the location for a property.
37 :: GMO OnLine Trouble?
[I've already worked around the problem I'm having, but I'm curious know if anybody else has gotten this to work without a workaround.
This pertains to GMO Online.
I've tried using GMOW.inc which came with SilkTest 5.0, and that was after my own declaration had problems.
The problems are:
1- The SameAs checkbox is non checkable?
2- The Fields on the ShipTo side give me problems even if I try to use the GMOW.inc.
3- SetText for HtmlTextFields has problems, where it does not set text sometimes, and others it leaves some of the old chars in there (like 0).
Now for my workarounds:
1- Used Keyboard (Tabs and Space)
2- I've changed the declaration tags to Index 1st then Caption Second for all the ShipXXX and BillXXX fields.
3- I've Over-Ridden SetText to do it twice for HtmlTextField class.]
Yes, I have seen this problem from time to time. In class, I most often insert a Tab key in between each line. I have not seen this problem (to the best of my recollection) when running Netscape 4.07 on NT. I haven't found out why this is happening though (if it's due to the agent, the GMO app, or the environment).
38 :: SilkTest runtime does not always get control (focus) after a test?
On Windows 98 or Windows 2000, if SilkTest launches but will not fully exit after execution of tests (leaving a blinking "SilkTest" window on the task bar).
This is due to a problem with Windows. The directory "W98_2000" on your SilkTest installation CD includes a file that should prove helpful. To perform this fix manually, use RegEdit to modify the following key in the registry of the computer running SilkTest:
HKEY_CURRENT_USER\Control Panel\Desktop
"ForegroundLockTimeout"=dword:000003E8
39 :: What is a test frame?
A test frame is a file that contains information about the application you are testing. Information stored in a test frame will be used as references when SilkTest records and executes testcases. A test frame is stored in an include file with file extension .inc.
40 :: A problem with SilkTest seeing HTML Links as HTMLText?
A problem with SilkTest seeing HTML Links as HTMLText. This always happens when the link is within a table (which is inside a table, which is inside another table).
In some areas I found if I put a space between the <TD> tag and the anchor tag, SilkTest will read the link as an HTMLLink. However, this trick doesn't always works. Infact, it only works in about 20% of the cases.
Has anyone else encountered this? Anyone know of a workaround?
Is there anything you want to do with these links that you cannot do now?
Even if they are recognized as Text, can't you do almost anything you can do on a link. Example Click () etc...
You can also choose to extend the HtmlText class to have the same methods as HtmlText.
41 :: How silktest recognize objects in UI? What it intenally calls to find out that the particular UI element is of which class etc?
Silk recognizes a UI with the tag it assigns to the UI.....There are 5 tags, see silk help for them...Some of it are operating system specific......
Go to Silk-->Record-->Window declaration.......Move the mouse pointer to the object for which you want to know the class.......It is shown in the tree view in the record dialogue box....
You can also do by Silk-->Record-->Window Identifier .....
42 :: How to get the integer value from a string ?
How to get the integer value from a string
print([int]"100")
this returns some different value some 49
need the value 100 to be print
Answer1:
There is one inbuild Silk's function which converts String value into Integer. Try with that
INTEGER iTemp = Val ("100")
Answer2:
Use Val function.....
print (Val("100"))...The int wrapper returns the ASCII value for the string "100"...
43 :: An application developed using Dotnet. and 1000 cases recorded for this application.
All was working fine until...one fine day...
Some one changed the namespaces which are used by this application. The scripts have started failing because it is as good as having a new window or a panel in the application.
Obviously, Silk does not recongnise this window.
Now is there any way to tackle this problem other than recording the windows all over again.?
Answer1:
First capture few windows and compare the new window declarations with old ones.
And try to find what are the changes in tags (Names) and any layers between windows.
Accordingly you just need to modify the few window identifies and need to include additional windows if any. ( you need not to touch your 1000 testcases ). Long back I had same problem with this method I solved.
Answer2:
If you are very sure that only the namespace name change has impact on the scripts then I can suggest you one approach.
I am assuming the following, Suppose the previous namespace name is "x" & now it is "y". And all your scripts are in a single folder say "F"
You need to write a script in any language C# or our own 4T language, that need to search all through the folder "F" and replace all the "X" with "Y" in each and every file.
This is the general way I go ahead when need to update one object in n number of files.
44 :: I have a GUI similar to Find Dialogue Box in Notepad..... Here the Check Box Match Case is recognized as Push Button and I want to check whether the check box has been checked or not..... I can not map a standard class PushButton to another class "CheckBox"....In the Window declaration I manually changed the PushButton class to CheckBox class but not working...
Please suggest any solution?
Answer1: 1. Try to find the class of that object by using Window Identifier. Sometimes it already mapped.
2. If it is developed by VB or C++, try to use ActiveX properties.
Question 2:
I checked and the class is not mapped..... The application has been developed in C++.....can you share some information on how to use ActiveX properties using Silk....
Answer2:
I think, you have to add your application in the extension enabler and check ActiveX Properties. See the help for " ActiveX: enabling support for"
45 :: WhaIs there a specific way to run a script from a point what I prefer, which is similar to run from cursor option in Winrunner? Any patch, adding, etc that enables this option in Silk.?
I don't think run from cursor is available in Silk......In this case, I comment the lines above, change the appstate to none and run...
47 :: Can SilkTest switch browsers automatically?
You can, but there's a few steps that need to be done.
You need to use Organizer to do this. There you can re-run the same testcases but at the top open a different .opt (options) file. You have to save these 2 opt files though after you set the runtime with Netscape, save the 1st one and save another after you set it up with IE.
Read more about organizer to learn more.
49 :: How to select a group of test cases in a testplan to run?
Usually, a testplan contains a big number of test cases. For some reason, you don't want to run all test cases in the testplan. You want to select a group of test cases and run them:
1. Open the testplan.
2. Select the test description line (linked to the testcase) to mark.
3. Click Testplan/Mark menu. The selected test description line is marked.
4. Repeat this process to select more linked testcases.
5. Click the Run/Run Marked Tests menu. SilkTest runs all the marked testcases.
6. Do not touch mouse or keyboard, to avoid interrupting the test case execution.
7. SilkTest finishes executing the testcase. The Restuls window shows up with the execution result.
8. Review the execution result.
50 :: How does Silk do with People Soft applications?
Two questionsfor Web and Application testing (People Soft)
[(1) Can Silk concurently drive BOTH a web application and a People Soft Application. Assuming I do not use appstates.
(2) How does Silk do with People Soft applications. Anyone out there have any war stories (good and bad) about this? I know people soft employs SQA and only SQA for this type of testing.
(3) When I do record the few People soft apps (for subsequent programming of tests) the recording is very slow. Also there are frequent agent freeze ups during a record session. The only way around this has been to reboot my machine.
I do not have any specific knowledge of People Soft applications but if you can see object with the recorder there should not be to many differences to other mixed application test scripts.
1) Yes Silk can drive both a web application and another application(such as People Soft)
I would recommend creating frames in separate *.inc files and then commenting out the const wMainWindow variable on the secondary application (I suggest the People Soft app as you can then use the default browser settings to assist in setting default states). The wMainWindow indicates what application to use for base states. This allows you to use application states if you need to. You can modify the default state to also start up the People Soft application. I have written scripts to manage browsers and FTP clients. This was quite successfull. The FTP clients were not web based (CuteFTP).
2) I don't know the specifics about this one. If you can automatically identify all of your object or Class map them effectively there should not be any large problems with using Silk with People Soft Applications. Our company has its own product called OpenUI for GUI design and Silk performs fine with it. We map our OuiFrames to VBFrames and the remainder of the objects are identified correctly. We have had a couple of strange things (tags altering) but nothing that could not be identified and worked around. We have quite a large suit of test cases. If you can record the object on the screen and they are identified as Text fields, Windows, buttons etc correctly you should not experience any large problems using Silk with People Soft products.
3) The recorder freezing up is quite common for everyone (at least everyone I know). If you are on NT you should only have to log out and back in again. If on Win 95/98, yes you will need to reboot. It is a real pain. I am getting nervouse about demonstrating the recorder to prospective customers. The good news is that Segue is addressing this issue with the recorder as we speak so I assume it should be resolved in future releases. (I am not from Segue so this is not an official statement, just heared it on the grapevine.) The speed of the recorder should not be a long term problem as these types of tools are really not good past the inital development stages. The are too limited and dont structure the code correctly. I have had problems with speed particulary associated with the freezing. It seems to slow down to about one micro instruction a second which is very frustrating.
51 :: Is this correct behavior for Silk or one of the idiosyncrasies of my non-standard windows?
When I extended the delay I noticed that Silk is a bit bizarre in the way it selects a sub menu item. For example, if you're selecting the first sub menu off the first menu item Silk drops down the menu, highlights the last item then back to the top and finally selects the sub item. Is this correct behavior for Silk or one of the idiosyncrasies of my non-standard windows app?
Answer1:
If I recall correctly, this behavior is a symptom of having changed the "Events used to invoke popup menus" string in the Agent Options/Other tab. Its default value is set to an unintuitive "<Button 2><Up><Down>". However, if you change it to "<Button 2><Down><Up>" it will perform as you describe.
Answer2:
If you select Options->Agent, then select the "Other" tab, you'll see a couple of checkboxes: "Pick menus before getting menu item information" and "Pick dropdowns before getting menu item information". I'm guessing that you have these checked by the behaviour you are describing. If you uncheck them, Silk won't check all of the menuitems before it does the Pick().
52 :: Sessionids problem
[I am running a script on a webbased application...so many use cases are there in my excel sheet....once the checking for the errors I have to go through next iteration...but sessionids are still present in the browser and disturbing entire process.. what can I do through script itself I am clearing temp internet files,deletecookies etc.. even though I am getting problem ]
To go to next iteration (login) you make sure you logout for the previous login....
Before login, use ClearCache () and see whether it works or not....
Silk Test Interview Questions and Answers PDF Experienced Freshers
SilkTest is a software testing automation tool developed by Segue Software, Inc.
2 :: What is SilkTest Host?
SilkTest Host is a SilkTest component that manages and executes test scripts. SilkTest Host usually runs on a separate machine different than the machine where AUT (Application Under Test) is running.
3 :: What is 4Test?
4Test is a test scripting language used by SilkTest to compose test scripts to perform automated tests. 4Test is an object-oriented fourth-generation language. It consists of 3 sets of functionalities:
1. A robust library of object-oriented classes and methods that specify how a testcase can interact with an application’s GUI objects.
2. A set of statements, operators and data types that you use to introduce structure and logic to a recorded testcase.
3. A library of built-in functions for performing common support tasks.
4 :: What is the VO browser extension?
Virtual Object (VO) browser extension is a SilkTest add-on component for testing Web applications. VO browser extersion uses sophisticated pattern recognition techniques to identify browser-rendered objects. The VO extension sees Web pages as they appear visually; it does not read or recognize HTML tags in the Web application code. Instead, the VO extension sees the objects in a Web page; for example, links, tables, images and compound controls the way that you do, regardless of the technology behind them.
5 :: I have recently encounterd a problem using Silk Test V3. When I record selecting a Menu Item it correctly records eg. Product.File.Exit.Pick()
But when I play it back it just selects the File Menu and fails to select Exit. The File Menu is not dropped, it is just highlighted.
The application is written in Visual C++ and is running on NT 4.
A couple if the menu items to work but that is about 2 out of 15 items. I can work around the problem using the menu short cut keys but would prefer to be simulating using the mouse in some test cases. Any ideas?
I have run into this problem before and it turned out to be a focus problem in the AUT. First, we need to understand how QAP/Silk selects menu items. It doesn't really use the mouse. It uses the key to highlight the menu bar and then arrows to the desired menu item. Try something out: Drive your application to the state before the menu selection. Now manually type F-10 or Alt and see if the menu highlights and allows you to arrow to the menu item. I'm guessing that it is probably a ChildWin or DialogBox that is really holding the focus and not passing the keyboard events to the MainWin. If this is the case, you need to explain to the developers that they need to enable this so that you can continue with your automated testing. A trick around this problem is to do a YourProduct.Click () to force the focus to the MainWin and then do the menu selection (YourProduct.File.Exit.Pick())
6 :: How to close unexpected window?
You meant to say one more browser window (Order Request) appearing apart from original window (Order Status)?
Answer1
If Order Request window is a popup.
Following code closes the active browser window if it is a popup:
[-] !(if Browser.ComboBox("#1").exists())
[ ] Browser.SetActive()
[ ] Browser.typekeys("")
Answer2
If Order Request window is a Browser window.(not a popup)
You can use the following code to close unwanted Browsers(like Order Request)
Order_Status.SetActive()
Browser.CloseOthers()
7 :: What is the best way to create a new test script?
In Automation; creating test scripts involves basically two step:
1. Creating Test Data for all test cases.
2. Writing scripts for automating the test cases.
The first steps, is the outcome of analysis of what all data is required for all of your testcases to be executed. These all should be collected and scripts to be written so that TEST DATA is ready.
The second steps, is basically the test case execution steps automation.
8 :: Is There any function for word count of web page is available in the SilkTest?
You can use Clipboard functions. Get All the contents by Ctrl+a & ctrl+C. Then parse the List of sting ...
9 :: What is SilkTest project?
A SilkTest project is a collection of files that contains required information about a test project.
10 :: Is there any problem in using scripts created on v6.0 to 6.5 or higher versions?
Moving from lower to higher version should not be a problem....
This is a general statement and cannot be true at all instances.
I faced problems with scripts working in 6.5 not running in 7.0 because some of the recognition patterns used each changed. And in some situations, finally landed two paths of the script to perform same action based on version.
PS: Did not encounter any problems from 6.0 to 6.5.
11 :: What is the DOM browser extension?
Document Object Model (DOM) browser extension is a SilkTest add-on component for testing Web applications. DOM browser extension communicates directly with the Web browser to recognize, categorize and manipulate objects on a Web page. It does this by working with the actual HTML code, rather than relying on the visual pattern recognition techniques currently employed by the Virtual Object (VO) extension.
12 :: What is SilkTest Agent?
SilkTest Agent is a SilkTest component that receives testing commands from the SilkTest Host and interacts with AUT (Application Under Test) directly. SilkTest Agent usually runs on the same machine where AUT is running.
13 :: What is the Segue Testing Methodology?
Segue testing methodology is a six-phase testing process:
1. Plan - Determine the testing strategy and define specific test requirements.
2. Capture - Classify the GUI objects in your application and build a framework for running your tests.
3. Create - Create automated, reusable tests. Use recording and/ or programming to build test scripts written in Segue's 4Test language.
4. Run - Select specific tests and execute them against the AUT.
5. Report - Analyze test results and generate defect reports.
6. Track - Track defects in the AUT and perform regression testing.
14 :: How to create a new SilkTest project?
1. Run SilkTest.
2. Select Basic Workflow bar.
3. Click Open Project on the Workflow bar.
4. Select New Project.
5. Double click Create Project icon in the New Project dialog box
6. One the Create Project dialog box, enter your project name, and your project description.
7. Click OK.
8. SilkTest will create a new subdirectory under SilkTest project directory, and save all files related to the new project under that subdirectory.
15 :: What is a SilkTest Testplan?
The SilkTest testplan is an outline that provides a framework for the software testing process and serves as the point of control for organizing and managing your test requirements. A testplan consists of two distinct parts: an outline, which is a formatted description of the test requirements, and statements, which are used to connect the testplan to SilkTest scripts and testcases that implement the test requirements.
16 :: How to get button caption?
Answer1:
Use GetCaption () method......
Answer2:
Either use "sCaption" Property or "GetCaption" Method
Syntax - ControlName.sCaption
or use GetCaption () Method
Syntax - ControlName.GetCaption ()
17 :: What are the types of text lines in a testplan file?
A testplan file contains text lines. There are 5 types of text lines in a testplan file:
1. Comment - Marked in green color: Providing commentary information.
2. Group descriptiton - Marked in black color: Providing descriptions for groups of tests. Tests in a testplan can be grouped into multiple levels of groups.
3.
4. Test description - Marked in blue color: Providing descriptions for individual test.
5. Testplan statement - Marked in dark red color: Providing relations to link scripts, testcases, test data, closed sub testplans or an include file to the testplan.
6. Open subplan file marker - Marked in magenda color: Providing relations to link sub testplans to be included in a master testplan.
18 :: How to add objects of other pages to a test frame?
If your Web application has pages other than the home page, you should also record their page objects into the test frame:
1. Make sure your Web browser is active and showing another page of your Web application.
2. Make sure SilkTest is running.
3. Click File/Open menu.
4. Select your test frame file. For example: HomeFrame.inc.
5. Click OK to open the test frame.
6. Click Record/Window Declarations menu. The Record Window Declarations dialog box shows up.
7. Click your Web application window. Web page objects are recorded in the Record Window Declarations dialog box.
8. Press Ctrl+Alt to pause the recording.
9. Click "Paste to Editor" button. All recorded objects will be inserted into the test frame.
10. Repeat this for other Web pages, if needed.
19 :: What is the syntax of UI object identifier used by DOM extension?
The DOM browser extension uses the following syntax for Web UI objects:
Browser.BrowserChild("page_title").html_class("object_tag")
1. "page_title" is the title of the Web page, defined by the HTML <TITLE> tag.
2. "object_tag" is the label of the HTML element. How a HTML element is labeled depending on the type of HTML element.
20 :: What is stored in a test frame?
A test frame is a text file, which records the following types of information for a Web application:
1. Comment: Commentary information.
2. wMainWindow: A string constant to identify your application's home page.
3. Home page window: An object of class BrowserChild window that holds application home page.
4. sLocation: The URL of the your application's home apge.
5. sUserName and dPassword: User name and password if needed to login to your Web application.
6. BrowserSize: A pair of values to indicate the size of the browser window.
7. Home page objects: A list of all objects on the home page, such as HtmlImage, HtmlText, HtmlLinks, etc.
21 :: Prob regarding close the Child Window
Answer1:
1. Identify the process handle and
2. kill it First child and then the MainWindow.
Answer2:
Integer HWnd=Browser.GetHandle() ///before child popup opens
....then your code
While Browser2.Exists()
{
If Browser.GetHandle()!=HWnd
Browser.Close()
Else
Browser2.SetActive()
}
You can also use window caption in the former code.
Answer3:
I think the tag to identify the parent and child are not unique, that is why the parent is closed...try to make the window id unique and then close the page...
First activate the child using and then close....It should work....
22 :: I am investigating solutions for automating an Invisible Application and believe that using a Grid may solve many of my problems. Does anyone have any experience using this technique with Silk Test or know of any good resources I could contact.?
Answer1:
If you use QA Partner, you should know, what to work it is possible only with one application, because include file (xxxxx.inc) only one. You can work it is possible with different windows, but only from one application.
Answer2:
As far as the QA Partner list - I would say it is dead. The SilkTest list at Onelist.com (this list) is much better anyway, since all the messages are archived for people to go back and search on. Plus, each user can control how they want it - each message or in digest mode.
Answer3:
As I know, you can work with several applications simultaneuosly. QA Partner/SilkTest doesn't limit you from that. You can run into the problem with using the default recovery system for all applications under test, but this problem can be solved too.
23 :: Retrieve text from disable textfield.Silk is not recognizing that disable object. How can I come to a conclusion?
Retrieve text from disable textfield.Silk is not recognizing that disable object. How can I come to a conclusion? I am having a web based application. In one web page there is a radio button.Selection of that radio button open an applet window. Now if I want to take the declaration of that window, It fails to recognise the same.Silk is properly configured to recognise Java based C\S application.How to resolve such issues?
If you want to retrieve data from a disabled textfield, you should first disable the Agent option "OPT_VERIFY_ENABLED" and the you can use GetText. The steps are:
Agent.SetOptions("OPT_VERIFY_ENABLED", false)
Print(TextField.GetText())
And coming to your next question, the answer is same, disable all the Agent options. Steps:
1.In the Options menu, click on Agent menu item.
2. In Agent Options window, click on Verification tab.
3. Uncheck all the options, except the last one (verification of application ready)
4. Click OK.
24 :: How to maintain recovery system?
In your TestCaseExit () function you can incorporate like
If condition == 1
do this
If condition == 2
do that
25 :: What are testplan attributes?
Testplan attributes are user defined characteristics to be associated with test group descriptions and/or test descriptions. You search, identify, and/or report test cases based on values of the different attributes.
26 :: Problem with JavaJFCTable class.
[I am trying to fetch values from a JavaJFCTable. I tried using GetContents, GetSelText, etc functions to retrieve values fromr the table but every time garbage values are retrieved. Has anyone faced such a problem before?
the application is recognized properly with no Custom objects in it.]
27 :: How to write function in inc file?
After you wrote the functions in inc ( eg:- demo.inc) you need to specify them in Use path/Use File
In Silk Test-> Options-> Run time
Specify the inc file path/File name in "Use File" Text box
(or)
Secify the file Path in "Use Path" and added the file name in "Use File" text box
(or)
In your script file add code like
[] use "demo.inc"
and add the inc file path in Silk Test-> Options-> Run time -> Use Path
28 :: How to record a test case?
1. Run SilkTest.
2. Click Option/Runtime menu. The Runtime Options dialog box shows up.
3. Edit the Use Files field to include your test frame file and the exlorer.inc file. For example: ...\HomeFrame.inc,extend\explorer.inc.
4. Make sure IE 5.x DOM is selceted.
5. Click OK to cloase the Runtime Optoins dialog box.
6. Open your test project.
7. Click Record/Testcase menu. The Record Testcase dialog box shows up.
8. Name your test case. For example: LoginTest.
9. Select DefaultBaseState in the Applicatin State dropdown list.
10. Click Start Recording button.The Record Testcase dialog closes. Your Web application is will be automatically started by SilkTest, based on the information in test frame file. SilkTest Editor window closes. The Record Status dialog box shows up.
11. Continue to use your Web application. SilkTest records everything you did on your application.
12. Click the "Done" button on the Recording Status dialog box to stop recording. The Recording Status dialog box closes. The Record Testcase dialog box shows up again.
13. Click Paste to Editor. SilkTest will insert the recorded acitivities as 4Test statements into a script file. The Record Testcase dialog closes.
14. Click File/Save menu to save the script file. You can enter a script file name. For example, LoginTest.t.
29 :: How to write a Masterplan?
[I want many plans and testcases to run by a single file. As Master plan-Sub plan are good medium since it gives me sharing features. Can anybody tell me how to run sub plans from the masterplan with an example.]
Yaa, you can run all your sub-plans using master plan approach.
You just open new plan file and call your subplan/testcase from this file.
if you want to run subplan from master plan then sysntax is like
include: mysubplan.pln
30 :: How to maintain global variable when script is run thru test plans?
Answer1:
This is the feature of Silk Test.
When u declare some global variables and initialize them in a testcase in one .t file, they are not retained to be used in another .t file in a testplan.
Here is the way out ...
Create a file and save the values in this file before u exit from the .t file.
This can be your last testcase in a file.
In the next .t file in the sequence, read this file and initialize global variables again.
This can be your first testcase in the .t file.
Answer2:
try couple of things
1. use environment variable as suggested by an other member of this group
2. copy the variable to the clipboard, every automation tool has a way to write and read content from clipboard which does not effect scope of the script.
Answer3:
I have one more solution for this problem try it out.
External file method (preferably .ini file - use ReadIni (), WriteIni () and few other functions).
Override your TestcaseEnter () and TestCaseExit () functions to get and set variable (reading values should be in called TestCaseEnter () and writing back the values in TestCaseExit ())
Even testcase failure also you will not loose the values
31 :: How can we get the IP address of a PC?
You can use the following
main
[ ] INTEGER iReturn
[ ] STRING sCmdLine = "ipconfig"
[ ] LIST OF STRING lsOutput
[ ] iReturn = SYS_Execute (sCmdLine , lsOutput)
[ ] listprint(lsOutput)
output is
[ ] Windows IP Configuration
[ ] Ethernet adapter Local Area Connection:
[ ] Connection-specific DNS Suffix . : abcd.xyz.net
[ ] IP Address. . . . . . . . . . . . : 1x.2xx.2xx.79
[ ] Subnet Mask . . . . . . . . . . . : 255.255.0.
[ ]Default Gateway . . . . . . . . . : 10.206.1.1
You need to do some trickery to parse and get the IP string..
32 :: Problem with the VerifyBitmap
Using VerifyBitmap function for comparing the Position, Borders, Color etc.
For Example:
Window.VerifyBitmap("Position.bmp",[Rect])
Window.VerifyBitmap("Border.bmp",[Rect])
Window.VerifyBitmap("Color.bmp",[Rect])
Running the script if any one of the verification failed, script is terminating at that point itself, without running remaining lines in the script.
Is it possible to make script run completely even though any of the verification failed? Want to see all the failed verified results in result window.
Answer1:
Put all the verification statements in individual do...except.....You can keep except part blank or display your error message here.....
Answer2:
That is how below three functions will work.
VerifyBitmap()
VerifyProperties ()
Verify ()
that should be last statement of your testcase and cleanup code you put after that but, that will get executed only when testcase pass. You can put it in except block so that it will get executed even testcase fails also Like below
do
//
//
//your statements
//
//
VerifyBitmap()
except
// your remaining statements those need to be executed only when testcase fails.
Or
use SYS_CompareBitmap() instead of VerifyBitmap()
33 :: How to link an error in the result file to the script file?
1. Make sure the Result window is open with result file.
2. Click Results/Pass/Fail Report. The Pass/Fail Report dialog box shows up.
3. Select an attribute on which you want the report to be based on. For example: Component.
4. Click the Generate button.
5. SilkTest generates a report in the Pass/Fail Report dialog box.
6. You can print or export the report.
7. Click the Close button to close the Pass/Fail Report dialog box.
34 :: What are the functions offered by DBTester?
DBTester offers 6 functions. You can use them directly in your test cases:
1. DB_Connect: Opens a database connection linking the data through the specified OBDC DSN name. DB_Connect returns a connection handle which can be used on other DBTester functions. SQL statements can be submitted to the database. For example: con = DB_Connect("dsn=dsn_name")
2. DB_Disconnect: Closes the database connection represented by the speficied connection handle. All resources related to this connect are also released. For example: DB_Disconnect(con)
3. DB_ExecuteSql: Sends the specified SQL statement to the specified database connection for execution. DB_ExecuteSql returns a query result handler which can be used by the DB_FetchNext function. For example: res = DB_ExecuteSql(con, "SELECT * FROM ...")
4. DB_FetchNext: Retrieves the next row from the specified query result handler. For example: DB_FetchNext(res, col1, col2, col3, ...)
5. DB_FetchPrevious: Retrieves the previous row from the specified query result handler.
6. DB_FinishSql: Closes the specified query result handler. For example: DB_FinishSql(res)
35 :: Need help to create Frame Work with Web testing
1) Should I do window declaration for each page
2) Should I do window declaration with multiple tag
3) Which multitag should I choose?
Anwser 1:
1) Should I do window declaration for each page Not necessarily but in most probability, u will have to do it. However, you don't need to declare every object in every page. You need to make use of inheritance so that an object declared in main class can be inherited to sub classes.
2) Should I do window declaration with multiple tag You can use multi tag to declare windows. When I say multi, you can use different captions of the window.
3) Which multitag should I choose Caption
From my experience, this multi tag should be WindowID.
Let me explain,
If you have two instances of the same application running, (obviously, both will have same caption), a conflict arises. In such a situation, Silk Test script fails.
To avoid this condition, Window ID can be used, because, even if two instances are running at a time, the window ID's would still be unique.
Anwser 2:
For Web based windows, dialogs, Window IDs are not much useful. Now silktest is identifying the object's variable name in source code. It will be similar to window ID. For stand alone applications, Win ID will be useful. Even if you look into silktest's INC files, you can see window ID.
While coming to duplicates of windows, then you can use window location, index and window ID. Mostly people are using Index like calc[1],calc[2],#1 and #2. Rarely ID and location (points X&Y) are used. I'm using location to some of modal dialogboxes in our AUT.
36 :: How to create group and sub group descriptions in a testplan? Can SilkTest Verify Locations of Ads?
Yes you can, but.....
The location may vary from 1 system to another? from one resolution to another.
You can use the .GetRect () method. Or you can use the verify properties (hold ctrl-shift while recording testcases)and select the location for a property.
37 :: GMO OnLine Trouble?
[I've already worked around the problem I'm having, but I'm curious know if anybody else has gotten this to work without a workaround.
This pertains to GMO Online.
I've tried using GMOW.inc which came with SilkTest 5.0, and that was after my own declaration had problems.
The problems are:
1- The SameAs checkbox is non checkable?
2- The Fields on the ShipTo side give me problems even if I try to use the GMOW.inc.
3- SetText for HtmlTextFields has problems, where it does not set text sometimes, and others it leaves some of the old chars in there (like 0).
Now for my workarounds:
1- Used Keyboard (Tabs and Space)
2- I've changed the declaration tags to Index 1st then Caption Second for all the ShipXXX and BillXXX fields.
3- I've Over-Ridden SetText to do it twice for HtmlTextField class.]
Yes, I have seen this problem from time to time. In class, I most often insert a Tab key in between each line. I have not seen this problem (to the best of my recollection) when running Netscape 4.07 on NT. I haven't found out why this is happening though (if it's due to the agent, the GMO app, or the environment).
38 :: SilkTest runtime does not always get control (focus) after a test?
On Windows 98 or Windows 2000, if SilkTest launches but will not fully exit after execution of tests (leaving a blinking "SilkTest" window on the task bar).
This is due to a problem with Windows. The directory "W98_2000" on your SilkTest installation CD includes a file that should prove helpful. To perform this fix manually, use RegEdit to modify the following key in the registry of the computer running SilkTest:
HKEY_CURRENT_USER\Control Panel\Desktop
"ForegroundLockTimeout"=dword:000003E8
39 :: What is a test frame?
A test frame is a file that contains information about the application you are testing. Information stored in a test frame will be used as references when SilkTest records and executes testcases. A test frame is stored in an include file with file extension .inc.
40 :: A problem with SilkTest seeing HTML Links as HTMLText?
A problem with SilkTest seeing HTML Links as HTMLText. This always happens when the link is within a table (which is inside a table, which is inside another table).
In some areas I found if I put a space between the <TD> tag and the anchor tag, SilkTest will read the link as an HTMLLink. However, this trick doesn't always works. Infact, it only works in about 20% of the cases.
Has anyone else encountered this? Anyone know of a workaround?
Is there anything you want to do with these links that you cannot do now?
Even if they are recognized as Text, can't you do almost anything you can do on a link. Example Click () etc...
You can also choose to extend the HtmlText class to have the same methods as HtmlText.
41 :: How silktest recognize objects in UI? What it intenally calls to find out that the particular UI element is of which class etc?
Silk recognizes a UI with the tag it assigns to the UI.....There are 5 tags, see silk help for them...Some of it are operating system specific......
Go to Silk-->Record-->Window declaration.......Move the mouse pointer to the object for which you want to know the class.......It is shown in the tree view in the record dialogue box....
You can also do by Silk-->Record-->Window Identifier .....
42 :: How to get the integer value from a string ?
How to get the integer value from a string
print([int]"100")
this returns some different value some 49
need the value 100 to be print
Answer1:
There is one inbuild Silk's function which converts String value into Integer. Try with that
INTEGER iTemp = Val ("100")
Answer2:
Use Val function.....
print (Val("100"))...The int wrapper returns the ASCII value for the string "100"...
43 :: An application developed using Dotnet. and 1000 cases recorded for this application.
All was working fine until...one fine day...
Some one changed the namespaces which are used by this application. The scripts have started failing because it is as good as having a new window or a panel in the application.
Obviously, Silk does not recongnise this window.
Now is there any way to tackle this problem other than recording the windows all over again.?
Answer1:
First capture few windows and compare the new window declarations with old ones.
And try to find what are the changes in tags (Names) and any layers between windows.
Accordingly you just need to modify the few window identifies and need to include additional windows if any. ( you need not to touch your 1000 testcases ). Long back I had same problem with this method I solved.
Answer2:
If you are very sure that only the namespace name change has impact on the scripts then I can suggest you one approach.
I am assuming the following, Suppose the previous namespace name is "x" & now it is "y". And all your scripts are in a single folder say "F"
You need to write a script in any language C# or our own 4T language, that need to search all through the folder "F" and replace all the "X" with "Y" in each and every file.
This is the general way I go ahead when need to update one object in n number of files.
44 :: I have a GUI similar to Find Dialogue Box in Notepad..... Here the Check Box Match Case is recognized as Push Button and I want to check whether the check box has been checked or not..... I can not map a standard class PushButton to another class "CheckBox"....In the Window declaration I manually changed the PushButton class to CheckBox class but not working...
Please suggest any solution?
Answer1: 1. Try to find the class of that object by using Window Identifier. Sometimes it already mapped.
2. If it is developed by VB or C++, try to use ActiveX properties.
Question 2:
I checked and the class is not mapped..... The application has been developed in C++.....can you share some information on how to use ActiveX properties using Silk....
Answer2:
I think, you have to add your application in the extension enabler and check ActiveX Properties. See the help for " ActiveX: enabling support for"
45 :: WhaIs there a specific way to run a script from a point what I prefer, which is similar to run from cursor option in Winrunner? Any patch, adding, etc that enables this option in Silk.?
I don't think run from cursor is available in Silk......In this case, I comment the lines above, change the appstate to none and run...
47 :: Can SilkTest switch browsers automatically?
You can, but there's a few steps that need to be done.
You need to use Organizer to do this. There you can re-run the same testcases but at the top open a different .opt (options) file. You have to save these 2 opt files though after you set the runtime with Netscape, save the 1st one and save another after you set it up with IE.
Read more about organizer to learn more.
49 :: How to select a group of test cases in a testplan to run?
Usually, a testplan contains a big number of test cases. For some reason, you don't want to run all test cases in the testplan. You want to select a group of test cases and run them:
1. Open the testplan.
2. Select the test description line (linked to the testcase) to mark.
3. Click Testplan/Mark menu. The selected test description line is marked.
4. Repeat this process to select more linked testcases.
5. Click the Run/Run Marked Tests menu. SilkTest runs all the marked testcases.
6. Do not touch mouse or keyboard, to avoid interrupting the test case execution.
7. SilkTest finishes executing the testcase. The Restuls window shows up with the execution result.
8. Review the execution result.
50 :: How does Silk do with People Soft applications?
Two questionsfor Web and Application testing (People Soft)
[(1) Can Silk concurently drive BOTH a web application and a People Soft Application. Assuming I do not use appstates.
(2) How does Silk do with People Soft applications. Anyone out there have any war stories (good and bad) about this? I know people soft employs SQA and only SQA for this type of testing.
(3) When I do record the few People soft apps (for subsequent programming of tests) the recording is very slow. Also there are frequent agent freeze ups during a record session. The only way around this has been to reboot my machine.
I do not have any specific knowledge of People Soft applications but if you can see object with the recorder there should not be to many differences to other mixed application test scripts.
1) Yes Silk can drive both a web application and another application(such as People Soft)
I would recommend creating frames in separate *.inc files and then commenting out the const wMainWindow variable on the secondary application (I suggest the People Soft app as you can then use the default browser settings to assist in setting default states). The wMainWindow indicates what application to use for base states. This allows you to use application states if you need to. You can modify the default state to also start up the People Soft application. I have written scripts to manage browsers and FTP clients. This was quite successfull. The FTP clients were not web based (CuteFTP).
2) I don't know the specifics about this one. If you can automatically identify all of your object or Class map them effectively there should not be any large problems with using Silk with People Soft Applications. Our company has its own product called OpenUI for GUI design and Silk performs fine with it. We map our OuiFrames to VBFrames and the remainder of the objects are identified correctly. We have had a couple of strange things (tags altering) but nothing that could not be identified and worked around. We have quite a large suit of test cases. If you can record the object on the screen and they are identified as Text fields, Windows, buttons etc correctly you should not experience any large problems using Silk with People Soft products.
3) The recorder freezing up is quite common for everyone (at least everyone I know). If you are on NT you should only have to log out and back in again. If on Win 95/98, yes you will need to reboot. It is a real pain. I am getting nervouse about demonstrating the recorder to prospective customers. The good news is that Segue is addressing this issue with the recorder as we speak so I assume it should be resolved in future releases. (I am not from Segue so this is not an official statement, just heared it on the grapevine.) The speed of the recorder should not be a long term problem as these types of tools are really not good past the inital development stages. The are too limited and dont structure the code correctly. I have had problems with speed particulary associated with the freezing. It seems to slow down to about one micro instruction a second which is very frustrating.
51 :: Is this correct behavior for Silk or one of the idiosyncrasies of my non-standard windows?
When I extended the delay I noticed that Silk is a bit bizarre in the way it selects a sub menu item. For example, if you're selecting the first sub menu off the first menu item Silk drops down the menu, highlights the last item then back to the top and finally selects the sub item. Is this correct behavior for Silk or one of the idiosyncrasies of my non-standard windows app?
Answer1:
If I recall correctly, this behavior is a symptom of having changed the "Events used to invoke popup menus" string in the Agent Options/Other tab. Its default value is set to an unintuitive "<Button 2><Up><Down>". However, if you change it to "<Button 2><Down><Up>" it will perform as you describe.
Answer2:
If you select Options->Agent, then select the "Other" tab, you'll see a couple of checkboxes: "Pick menus before getting menu item information" and "Pick dropdowns before getting menu item information". I'm guessing that you have these checked by the behaviour you are describing. If you uncheck them, Silk won't check all of the menuitems before it does the Pick().
52 :: Sessionids problem
[I am running a script on a webbased application...so many use cases are there in my excel sheet....once the checking for the errors I have to go through next iteration...but sessionids are still present in the browser and disturbing entire process.. what can I do through script itself I am clearing temp internet files,deletecookies etc.. even though I am getting problem ]
To go to next iteration (login) you make sure you logout for the previous login....
Before login, use ClearCache () and see whether it works or not....
0 comments:
Post a Comment