The other day while automating a test case for our Web application I found that SWEA was recognizing that an element existed on the page even though I couldn’t see it. This wasn’t good because that element was a client side error message for a form and nothing was being done with the form to throw the error. A closer look at the HTML revealed a <SPAN> tag with the style property visibility set to “hidden”. It looked like this:
<span style=’visibility:hidden’ class=’VAMErrorText’ id=’valInactiveDays’><span id=’valInactiveDays_Txt’>Must enter a numeric value.</span>
A test case that actually caused the error to visually appear on the page resulted in the following change to the HTML:
<span style=’visibility:visible class=’VAMErrorText’ id=’valInactiveDays’><span id=’valInactiveDays_Txt’>Must enter a numeric value.</span>
So, in the top example the element existed in SWEA’s eyes because it existed on the page but it was “hidden”. My problem to solve was how to make my test acknowledge that the error message wasn’t really thrown and that it was still “hidden”. At the time I figured it would be best to extract the HTML out of the SWEA control and search for the text “Visibility:hidden”. My resolution looked like this:
case TestGoal.SuccessfulResponse: ((HtmlInputText)(myBrowser.Scene[“txtInactiveDays”])).Value = txtValue; ((HtmlInputButton)(myBrowser.Scene[“btnLoadReport”])).Click(); myBrowser.Scene.WaitForActive(30000); //Hidden elements can still be seen by SWEA so make sure it’s hidden //Text we’re searching for txtHidden =“VISIBILITY: hidden”; //Return a boolean for/when txtHidden is part the controls OuterHTML isHidden = ((HtmlContent)(myBrowser.Scene[“HiddenVAMLbl”])) .OuterHtml.IndexOf(txtHidden) > -1; //Validate control is hidden Assert.IsTrue(isHidden==true); break;
When talking to Alex after the fact, he reminded me that I could also pull out the Style information by doing the following:
You can now get your Internet Explorer 6 and 7 add-ons through the new IE add-on web site IEAddOns.com. According to the IEBlog:
“Products on the site either work directly with Internet Explorer 6 or 7, or use the IE platform, and have to meet the CNET Software Submission Requirements and Adware and Spyware Policy before being posted. We also welcome users, editors and industry specialists to write and post reviews for each add-on, and report problem software.”
A quick perusal of the initial list of add-ons sparked no interest for my QA mind. After about 2 minutes of looking around I realized that the new IE Developer Toolbar was not to be found on the site. Seems odd… I know it’s in beta but that shouldn’t keep it off the site! Maybe it didn’t meet the “Software Submission Requirements”?
Once the word is out and the add-ons are submitted, this should be a nice little portal (hopefully as nice as the FireFox extensions site).
Over the last 2 days I had the opportunity to remove the SQL 2000 database out from underneath our Web Service and replace it with SQL 2005. The team was hoping to see an instant gain in SQL performance but that’s not what happened. Performance tests that put the SQL 2000 server at a comfy 69% CPU usage were now using 81% with SQL 2005. Bummer. Where’s the magic Microsoft? Keep in mind we made ZERO changes to the Web Service or SProcs for the test.
We’re not going to give up hope on gaining performance with SQL 2005, the move is just going to be slower for us now since we obviously need to uncover the magic and finding that magic is going to take some work. During this SQL upgrade test I learned a few interesting things that I suppose I should share with you…
I couldn’t successfully restore a SQL 2000 database backup to my database in SQL 2005. I had a few errors thrown at me but this is one that I documented: “Restore failed for Server ‘TEST-SQL1’. (Microsoft.SqlServer.Smo), Additional information: System.Data.SqlClient.SqlError: The backup set holds a backup of a database other than the existing “TEST” database. (Microsoft.SqlServer.Smo)”
The SQL2000 database couldn’t be attached in SQL2005 and used successfully. For some reason, when I attached my 1 million+ entry database my largest table was empty?!
Does attaching to a 2000 .MDF in 2005 migrate the data? According to a forum post by an engineer on the MS SQL 2005 development team, it does migrate the system tables but he says nothing about the custom tables. I couldn’t find any other info on the web on how to migrate data other than using the attach feature as described by ASPFree.com. Microsoft has an upgrade advisor tool but it doesn’t upgrade anything it just does analysis.
And yet again more personal financial user data was stolen. This time it was from a company named Regulus Integrated Solutions that was hired to take care of Wells Fargo monthly statements. Customers sued but since the user data has not been exploited (yet) they lost. Hmmm… I wonder if the customers “fear, anxiety and worry” could have been alleviated with use of encryption by Regulus?
Sometimes I have a good little chuckle about some of the search queries that people land on my site with. Today’s chuckle was about: “quality assurance standards for bingo paper”. Think about that job…
I landed 3rd in the list from MSN with the relevant words of quality, assurance, paper, and standards, but NOT bingo. I’ll have to work on finding a better way to get to the top of the list for those Bingo Paper QA Engineers. Maybe this post will do it since search results don’t really return anything relevant to the query. Maybe the standard/job doesn’t exist? Drop me a note if you’re a Bingo Paper QA Engineer. I’d like to hear what a day in your position is like!
Is AJAX worth the effort? Looking at Eric Holton’s unofficial test tells me there isn’t much of performance advantage (With AJAX: 3.24 seconds; without AJAX: 3.36 seconds). There’s not much detail about the test but it feels legit.
“The Social Security numbers, driver’s license information and bank account details belonging to potentially millions of current and former residents of Florida are available to anyone on the Internet because sensitive information has not been redacted from public records being posted on county Web sites.”
One of my favorite quotes is:
“Aside from making the redaction- request process as user-friendly and speedy as possible, I do not have the independent authority to take any additional action regarding removing material from the public records,”
They can’t take down you private information unless requested. What’s wrong with this world? Heh.