Archive for October, 2006

Virtual PC 2007 Beta is available


Ben the “Virtual PC Guy” tells us that Microsoft Virtual PC 2007 Beta is out. Get the feature list over on his blog. Sign up for the VPC 2007 beta here.

I spend a large portion of my QA day using VPC 2004, so I’m pretty excited, and SCARED, to see what 2007 will do for me. My hopes are high that the performance improvements will make my testing experience faster. Please? Please. PLEASE!

Internet Explorer 7 Released


Today Microsoft released Internet Explorer 7. When I got home from work today I installed it on my wife’s laptop. Any minute I should see what the WAF is.

I noticed my 12 year old son was using it while doing some homework and I asked him what he thought, the conversation went something like this:

Me: What do you think about Internet Explorer 7?
Jake: The thingy with the gold ring?
Me: Yeah, the Web browser you are using right now (peering over the top of the laptop and noticing a Web page with pictures of Lysosomes)
Jake: Looks the same to me, I didn’t notice.
Me: You don’t see ANYTHING different?
Jake: I guess up here is kinda weird (as he points to the Yahoo toolbar at the top of the Web browser…which doesn’t look any different than it did in IE6).
Me: Hmm…

I think his experience is a good thing? If you think about it, a twelve year old doesn’t care about security, phishing, integrated search, and all the other new, key features of IE7. The fact that he opened IE7 up (with the new desktop icon), did a search on Google for Lysosomes, and printed a picture out for his storyboard/report tells me that Microsoft did a great job with revamping their browser but not confusing their customers.

Kudos to Microsoft.

Download IE7 here.

Don’t download it here ( …haha)

Webcast from Borland: Lifecycle Quality Management


Every since Borland bought Segue there has been a LOT of marketing material coming from Borland. Thing is, it hasn’t been just “Buy our products” material, it’s been some good testing and quality assurance info (75%)that leads up to “Buy our products” (25%). 

The latest push is with their Lifecycle Quality Management (LQM) process which is one of their 4 processes in their Software Delivery Optimization vision. Read the news release here. In promotion of LQM, Borland is offering a free Webcast entitled: Lifecycle Quality Management; Infusing and Automating Quality at Every Phase

Here’s the Webcast info…

Date: Wednesday, November 1st 2006
Time: 11:00 AM PT / 2:00 PM ET; 1 hour

Featured Speakers:

  • Brad Johnson, Product Marketing Director of Lifecycle Quality Management solutions for Borland® Software
  • Matt Light, Research Director for Gartner Research
  • Frank Derfler VP, Market Experts Group – Ziff Davis Media

Register for the Webcast here.

Ajax Security Dangers white paper from SPI Dynamics


SPI Dynamics (known for being experts in security for Web applications) has released a white paper on the dangers of Ajax. It’s a worthy and quick read if you are doing any testing or development with AJAX. Get the paper here.

I’ve seen a lot of activity and focus on implementing secure Ajax solutions, which is a great thing, but I’m telling you people…it’s dangerous if not done right. The more I read and play with it the more I think:

“Ajax…the new, great way to exploit”.

“Bad Ajax implementations…A phishers dream!”

Yeah, yeah… I don’t want to hear your “The technologies used in Ajax aren’t new” crap. The technologies aren’t, but the focus is.

Solving user reuse issues in Silk Performer using Agent detection


It wasn’t long ago that I ran into a scenario when performance testing that required some creative thinking to fix. The root of my problem was that each of Silk Performer’s Agents utilize their own copy of all the data files in a project, and when my application’s User IDs are in that data file, the Agents will end up having Virtual Users using the same User ID at the same time, causing inconsistent/clashing user behavior (which caused an error in the application). Working from 1 pool of User IDs with 1 Performer Agent is no problem (when using the function FileGetNextRow() that retrieves User IDs sequentially), but add that 2nd Agent and all hell breaks loose. 

My half-ass fix to the problem? Divide the User IDs and Virtual Users between Agents. For example, if you have 2 Agents and 1 million User IDs, then one file with 500k will go on Agent #1 and another file with 500k will go on Agent #2. Seems feasible right? Wrong, as stated before, Silk Performer will load all data files to the Agents, in other words…you don’t get to choose which data files are uploaded to your Agents. Thus, Agents will use both sets of files in the 2 file example.

So, now the problem becomes: How do I have each virtual user recognize which Agent it is coming from and use a uniquely assigned User ID file? Answer: Use the GetAgent() method in the Init transaction:

transaction Init
 sAgent : string;
 sAgent := GetAgent();

GetAgent() will return the machine name or IP that the Virtual User is coming from. You can now use that value to instruct the Virtual User to grab a User ID from the correct User ID file for that Agent (still within the Init Transaction):

//Split up users between agents to avoid behavior issues/error
//Check for localhost too so that Try Scripts will still run

if (sAgent = “Agent1”) OR (sAgent = “localhost”) then 
  FileCSVLoadGlobal(nAcctFile, “Users.rnd”); //500k users

elseif (sAgent = “Agent2”) then
  FileCSVLoadGlobal(nAcctFile, “Users2.rnd”); // other 500k users
  RepMessage(“Agent not found.”, SEVERITY_ERROR);

Now, in your transaction where the user will be initialized you will use the method FileGetNextRow() forcing the Virtual Users to grab the User IDs sequentially from the file (choosing User IDs randomly would put us back to square one…the error):

sUser := FileGetCol(nAcctFile, 1, STRING_COMPLETE);

It’s been a while since I wrote this code, but I think my friend Mark McCorkle helped me think through it. Thanks Mark!

Who tested the Coke vending machine?


My good ol’, thrill seeking, programming, secret harboring, friend Matt blogged about a bug in a Coke vending machine that will get you 2 cokes for the price of 1. From a quality assurance perspective this is really quite interesting…well at least it is to me because I’ve been in more of a software quality assurance world for most of my career and hadn’t really thought about porting my hacker mentality to physical or mechanical devices in the “real” world. It’s Quality Assurance and testing on a different plane but the same concepts still apply. Interesting…

Do you think the creator of this vending machine actually went through an official testing process?

Check out these Coke vending machine “bugs”:
Overflow exception
Change the menu 
Two for the price of one

Now that I think about it, I think my first memory of lack of testing on this plane was when I was about 6 years old. I remember going to the grocery store with my babysitter and her son (who was about 13) would play the Asteroids arcade game that sat by the exit door using filed down metal washers instead of quarters. Pure genius… I wonder what he’s doing now? I wonder if he’s in QA?

Better Software Magazine: The $60 Web-Testing Toolbox


Today is a day to remember for me…today my first magazine article found in Better Software Magazine hit readers’ mailboxes. My article entitled The $60 Web-Testing Toolbox hit the shelves today in the October edition. Sweeeeeet! It’s a privilege to write to this shady blue blog and have regular readers but its a different sense of accomplishment to see your words on paper coupled with other authors in a monthly publication. I’ve been getting the magazine myself for a few months now and I really enjoy it. It has content that I can relate to as Quality Assurance Engineer. You too can subscribe to Better Software Magazine here and get 20% off.

So… back to my accomplishment. Huge! I’m currently working feverishly to make sure will handle the monstrous load that will be brought in from the link in my Bio. I’ve added backup mail servers to handle the Terabytes of fan mail. I went to Home Depot and bought 4 wheel barrows to help cart the loads of money around (money made from fame and sponsorships). I’ve forewarned my wife about the hoards of frenzied QA girls that will be waiting on our door stoop and peeking through our windows just hoping to get a glimpse of me.

Don’t worry; I won’t let this go to my head. I promise I’ll stay faithful to you my faithful blog readers. I don’t care about the fame and fortune, I care about Software Quality. đŸ˜€

Automation using SWEA/IE, HTTPWatch, C# and NUnit


My dear SWEA fans,
Our IE automation expert Alex Furman has added some plumbing to SWEA to allow us to use the HTTPWatch automation library from an Internet Explorer/SWEA instance. This is SUCH A GOOD THANG! I for one am looking forward to the things I can now integrate into my current automation test suite.

Don’t know what SWEA can do for you? Check out my prior posts on automation with SWEA. Not sure what the benefits of automating HTTPWatch are? Check out this prior post

Download the latest version of SWEA that supports HTTPWatch here. Download a demo of HTTPWatch here.

To help you get a grasp of the two and how they work together I’ve created a demo Visual Studio project that utilizes SWEA, HTTPWatch, IE, C# and NUnit. Compile it, point NUnit at HTTPWatch_NUnit_Demo.exe and run the 5 tests. The NUnit Test Suite will conduct the 5 HTTPWatch related tests against which will work with HTTPWatch Basic Edition (their demo).

Download my SWEA-HTTPWatch demo project here (7.73 KB).

Post navigation