Siebel Test Automation

I have recently been working on some Siebel projects testing Siebel with both, functional and performance requirements and I have to say it's very interesting once you get into it.

Lets start with a look at functional testing, Siebel is a web based application based on that statement we can assume that we can use any web testing tool without having to modify anything..... Well with Siebel that is not the case, Yes it runs on Internet Explorer and Yes its a web based application, however as well as having the regular HTML objects known as Standard Interactivity (SI) objects, Siebel uses specialized High Interactivity (HI) components that run in the web browsers client machine.

Oververview of Functional Testing.

Siebel web pages are generated dynamically by the Siebel Web Engine (SWE) on the Siebel Server
Each page generated consists of a variety of components such as applets, views and controls. Web application testing tools will interact with HTML objects such as links, forms etc ...but will have challenges interacting with binary objects such as applets. To overcome this issue Siebel provides a test framework (Siebel Test Automation Framework) which is a small program that once enabled will allow your test tool to interface with the HI components.

To enable Test Automation Framework in Siebel 7.8 you will need to:

1. Open the .CFG file for the Siebel application on the Siebel server.
2. Set the EnableAutomation and AllowAnonUsers switches in the [SWE] section as follows:

[SWE]
EnableAutomation = TRUE
AllowAnonUsers = TRUE

3. Reboot the Siebel server.

To enable Test Automation Framework in Siebel 8.0

Log into Siebel as an administrator: Site MapAdministrator - Server Configuration -> Servers -> (Pick Server) -> Select (Object Manger) -> Parameters -> Change EnableAutomation & AllowAnonUsers to True.

bl3.1.JPG

You will also need to enter a license code for the changes to take effect:

Log into Siebel as an administrator Site MapAdministration - ApplicationLicense KeysNew → Enter (License, OK, 99999, Never)Save

You can find the license codes at http://licensecodes.oracle.com/siebel.html

bl3.2.JPG

Restart you server for the changes to take effect.

Once that is done we can start recording scripts, to do so we will need to tell Siebel that we like to use the test Automation Framework during a particular session, we do that by adding SWECmd=AutoOn in the URL as a parameter:

http://youSiebelServer/service_enu/start.swe?SWECmd=AutoOn

If its the first time that you are running it when login into Siebel IE will ask for a plug-in to be installed, once you have successfully logged in, check your task manager to make sure that the Siebel Automatation Framework is running, you should see a process called SiebelAx_Test_Automcation_xxxx.exe running:

bl3.4.JPG

That process will enable as to talk to Siebel HI objects.


Interacting with HI Siebel components in OpenScript.

Once we the Siebel Test Automation framework is running OpenScript will be able to interact with the High Interactivity Siebel components:

bl3.5.JPG

The above image shows OpenScript interacting with a Siebel HI component.


Overview Of Performance Testing

Unlike functional testing performance testing works on a protocol level, in the case of Siebel that's done by simulating the HTTP requests that the Siebel UI generates.

Correlation in Siebel.

Correlating standard HTML pages is not a difficult task, all you usually need to do is look for a value inside an HTML tag and match it to a regular expression, which tends to be an easy task, in the case of Siebel however, it does not send all of its information in an HTML format, instead it does so in a very difficult format to read by humans and to correlate using regular expressions, see the text below for an example.


@0`1`4`2``0`UC`0`Status`Completed`_sn`6JQ7gDFjaLU3x4iErz1hjs120hUJQbNF8ii2x.e5znEoyjftN59fFg__`SWEC`12`0`6`Notifications`0`2`0``0`OP`bn`bc`S_BC3`7`1``0`br`0`ar`0`size`1`cr`0`OP`ndw`bc`S_BC3`f`TEXT lampuit Activado`2`0`FieldValues`0`ValueArray`16*11 Environnement`FieldArray`1*1`7`0``0`br`0`ar`0`size`1`cr`0`OP`nfd`bc`S_BC3`f`TEXT lampuit Activado`7`1``0`br`0`ar`0`size`1`cr`0`OP`ndw`bc`S_BC3`f`ITS Employers Name`2`0`FieldValues`0`ValueArray`0*`FieldArray`1*3`7`0``0`br`0`ar`0`size`1`cr`0`OP`nfd`bc`S_BC3`f`INS Employers Name`2`0``0`OP`en`bc`S_BC3`1`6`Command Manager`0`RefreshToolbar`true`4`0`StateToolBar`0`#15`true

Since correlating this information would be a difficult task, not to say pretty much impossible Siebel provides a correlation library (ssdtcorr.dll) which can be used as an interface to correlate your load test scripts.


bl3.6.JPG

The image above shows some variables being correlated in OpenScript using the correlation library

The correlation library will also highlight functional errors such as badly formatted data or duplicate values.

Intelligent test tools such as OpenScript will utilize this library to generate and validate Siebel scripts reducing both the complexity of creating scripts as well as space for human error.

bl3.7.JPG

The image above shows both accelerators (load and Functional) in OpenScript.

Conclusion

Siebel can be a tricky application to test since it imposes very strong functional and technical rules, however with the aid of the Test Automation Framework and the Siebel correlation library intelligent test Automation tools can communicate with Siebel to provide a better test automation interface, helping you concentrate more in the functionality of your scripts instead of spending time in the technical aspects.


Comments:

I'd love to read more about this

Posted by loppzer on December 12, 2009 at 04:04 AM GMT #

You just got your blog a spot in my favorites

Posted by ChadsacMovie on December 14, 2009 at 07:52 AM GMT #

Clearly your open minded and receptive to other ideas. Many people in the online community are a little more totalitarian. im gonna bookmark ur site :D Of course-- and I probably shouldn't even have to say this-- people are free to run their own blogs as they see fit. But I get the highest value from blogs where either the author's writing is so outstanding that the lack of comments isn't material a combination of good writing and good comments leaving my personal Research blog if you dont mind wael kfoury

Posted by wael kfoury on January 03, 2010 at 04:40 PM GMT #

Nice post!

Posted by backlinks on February 07, 2010 at 10:39 PM GMT #

A great post. This works only for the thin client testing. How do you enable it for the Mobile Client Testing? Thanks. himalikid@gmail.com

Posted by Anonymous on February 24, 2010 at 01:30 PM GMT #

It sounds good to have library for correlating values in performance testing. And it works good. It definitely saves great amount of time. However there is no mention of changing variable IDs or starr aray variable's positions so the scripts could be useless after any new Siebel build. Pity there is no way to fix the positions or identifications (if there is no significant change in applet).

Posted by miff on May 19, 2010 at 03:27 AM BST #

If only I had a dollar for each time I came here... Great read.

Posted by Karen Smart on June 14, 2010 at 01:49 PM BST #

I am using Siebel 7.8. I changed the cfg and added license code 7093 0532 1480 5783 3214 4381 86 6956 2171 3923 8163 7132 5217 221 but I still did not see SiebelAx_Test_Automcation_xxxx.exe running after enter http://mySiebelServer/callcenter_enu/start.swe?SWECmd=AutoOn

Posted by guest on July 01, 2010 at 09:56 AM BST #

Have you restarted the Siebel server/s ?

Posted by Alex on July 01, 2010 at 10:38 AM BST #

Yes. I did it. Anything else I may miss?

Posted by guest on July 01, 2010 at 11:50 AM BST #

Yes, I did restart Siebel server and everything.

Posted by guest on July 07, 2010 at 10:32 AM BST #

Yes, I did resart Siebel server, even Gateway and web services.

Posted by guest on July 07, 2010 at 02:13 PM BST #

Hi There are 4 steeps that you need to do: 1) Change the parameters 2) Add the license codes 3) Restart the server 4) add the SWECmd=AutoOn in the url before loginin (http://youSiebelServer/service_enu/start.swe?SWECmd=AutoOn) Are you doing all of these steps ? Regards Alex

Posted by Alex on July 08, 2010 at 02:49 AM BST #

Hi Alex, The blog is an interesting source of information i really like it. I just have a question, but let me explain myself a bit. I am currently working on automated testing, and have been having a very hard time to get access to the UI Layer of the HI Framework. Finally after couple of days of research i found about the STA (Siebel Test Automation) interface that was unveiled on 7.7 release. I manage to find the documentation that expose the UI Control methods/properties and so on, but unfortunately there is no hint on how to access that interface. I assumed is by attaching my script to the current ActiveX running in the IExplorer that's hosting my Siebel app, but is just not working for me. Do you have any hint or tip i can try to access that interface programatically? I understand your blog makes reference to the usage of that interface via OpenScript, but any ideas on how to do that on your own? Any hint/clue is greatly appreciated. Have a nice day. guillermo

Posted by Guillermo on September 15, 2010 at 12:36 AM BST #

Guillermo Have a look at the Siebel books, http://download.oracle.com/docs/cd/B31104_02/books/TestGuide/booktitle.html There is one dedicated to testing. However if you need to test Siebel on a regular basis I would invest some money in a tool like OpenScript, as Siebel scripts are very fragile. If you like to try out OpenScript you can get it from: http://www.oracle.com/technetwork/oem/downloads/index-084446.html Alex

Posted by Alex on September 15, 2010 at 02:08 AM BST #

GREAT article. Thanks a million!

Posted by fake Patek Philippe on October 04, 2010 at 03:36 AM BST #

I approve of your blog! Good stuff

Posted by Tory Emmerson on December 01, 2010 at 12:49 PM GMT #

Hi, I will be using OATS for load testing a Siebel application. Your blog is very helpfull for me as I am new to OATS. Just wanted to know if I need make similar (as for functional testing described in your blog) changes to enable the Siebel Test Automation Framework for the Siebel application for creating load testing scripts? Also from your experience, how difficult can the corelation part be for Siebel scripts using Openscript? Thanks in advance

Posted by C.Prusty on December 30, 2010 at 07:26 AM GMT #

Hi You don't have to do anything for performance testing scripts, OATS is shipped with the Siebel correlation library. As per my experience OpenScript correlates about 95% percent of all the values, however the 5% that it misses can be very tricky to correlate. Regards Alex

Posted by Alex on December 31, 2010 at 08:22 AM GMT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

bocadmin_ww

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today