Test's profileMusing about Software Te...PhotosBlogListsMore ![]() | Help |
Musing about Software Testing |
|||||||||||||||||||
|
May 05 Test Architects agree on Model Based TestingTwo weeks ago I, with several other Test Architects (TAs), met with a group of new Microsoft testers from Israel. Many were developers from acquisitions new to the SDET role. Near the end of the meeting I jumped on my soap box and recommended model-based testing as something to consider. While we 7 TAs frequently ended up giving 8 different opinions, I was shocked and pleasantly surprised about the support for model-based testing. Of course each TA had a different view of it. Noel reminded everyone that most testing is actually done from models, if only (sometimes unconsciously) in the head of the tester. You can find this described in numerous test conference presentations and magazine articles. John jumped in that just creating the model helps find problems. I, and others, have commented about this many times. Recently my team has developed more actual supporting data (not just anecdotal cases) for this fact – it is in the process of being prepared for publication, keep tuned.) Others remarked on translating models from the head of the tester into code and I ended with end to end MBT using Spec Explorer to help translate mental models to executable models that can be explored and generate tests.
April 15 System Scenario demonstration via Captures and PlugfestsRecently, several aspects of my teams work has become public. One aspect is the demonstration of scenarios listed in System Overview Documents. The System Overview Documents describe a family of protocols or task(s) and connect them together. A part of the document gives actual scenarios. Our test team demonstrates the accuracy of the scenarios by reproducing them on real windows systems and using Netmon 3.3 captures of the traffic. We then use a new Netmon 3.3 feature called comments to annotate the messages captured that relate to the scenario. You can learn more at http://codeplex.com/SysDocCap Another aspect is the verification of Technical Documents using test suites (frequently model-based). The test suites are designed to be implementation agnostic and with simple implementations of an interface portable across different implementations. This has been demonstrated at periodic plugfests that Microsoft holds for licensees that want to verify interoperability of their implementations with Microsoft and other implementations. Classic examples of this are the SMB2 protocol with Samba (snia plugfest) or Kerberos Protocol Extensions with MIT Kerberos. A set of presentations from a System Overview Document perspective was the Active Directory Plugfest. January 16 Genuinely surprised when software fails?As last night’s SASQAG meeting, James Whittaker again presented his Future of Testing talk (GTAC version still not on YouTube). A statement near the end piqued me. "Users will be genuinely surprised when it fails." I think James is tainted by his past experiences. There are past and current companies that already work like that. My first job out of college at Tandem Computers warped my expectations forever. As a fault tolerant computer company, not failing (hardware or software) was important. In my first week there I found a trivial bug in their editor with a recursive macro called that crashed. I was told to report the bug and get it fixed. That was the attitude in general, all bugs reported and generally all bugs fixed. There was of course triage and minor bugs deferred until next release, but I never saw bug tracking systems for tens of thousands of bugs until I came to Microsoft. Long ago Tandem saw the criticality of avoiding data corruption and a fail fast philosophy. Code reviews of the kernel were keen on what could go wrong. Many others from that crucible ended up at Microsoft with an expectation for quality in their soul. Many worked on Microsoft SQL with an expectation for outstanding quality.
The Agile community with their “Test Driven Development” and automated regression runs every check in help instill a quality expectation in developers. But many already had it. I have my Software Quality Engineering big red buttons from the mid 1980’s – “TEST then CODE”. My favorite was a developer who bet me a dinner I couldn’t find a bug in his code. Why the challenge? Mutual respect and improvement. I didn’t take the challenge. Why? The developer was good; they had done the right things. I was not currently on their project (but had been months previously). I could probably find a bug, but it would probably cost me my entire weekend and that wasn’t worth a dinner to me. But the real point is the proper confidence of the developer. Not arrogance or bravado. He knew if I worked hard enough I would find a bug and he would be happy to receive it and improve his product. To him, a dinner was a small price to pay for a better product.
My expectation is always that when I am asked to test a developer's work product it is because they believe it is ready to ship to the best of their ability. They’ve code reviewed (peer review, pair programming, etc.) it and unit tested and run the standard tests available to them. The only bugs I should be finding are those requiring resources outside the scope of a single developer, such as large scale stress testing or full system (integration) testing.
December 09 Software Testing at a Glance – or twoI recently acquired the “Software Testing at a Glance – or two” poster (A3 PDF here) from Delta Axiom. From http://www.deltaaxiom.com/C12571E70035EE18/0/835FB67AB3628800C12573E1002A9EAC you can order poster for Free. The poster (1mx70cm), a gift from Specialisterne, is hanging on my wall.
Naturally I have a few issues with it, but it is the widest smorgasbord on testing I’ve ever seen. I like it and agree with probably 90% of it. “Based on ISTQB Certified Tester Advanced Syllabus 2007 and references therein (BS-7925-1:1998, IEEE Std. 610-1999; IEEE Std 829-1998).”
I had no idea what the (SPICE) ISO 15504 – result profile was telling me Has anybody used SPICE or now what this diagram says? [See http://www.westfallteam.com/Papers/Making_Sense_of_15504.pdf page 6 for color version of diagram] [I would replace with something more meaningful].
I don’t agree that all of their “Useful testing measurements” are useful. Number of test cases isn’t very meaningful to me.
The PDF is a picture and doesn’t scale up well to read bottom left corner. The circle reads “Management and Support” with (Left to Right): Blue: Idea & Requirements, Green: Design, Lime: Implementation; Orange: Test, Red: Manufacturing & Operations November 18 TechEd, MDCC, SPecialisterneGrigori’s interview of me on Spec Explorer for Visual Studio is online at TechEd Online Tech talks (Search for “stobie”). Although the score for my TechEd talk, , and Q&A Session, , rate only just below and above average, they generated some excitement. Several found the talk interesting and one person said “this session really was revolutionary for me.” The video of the talk won’t be publicly available for about 6 months. We also get several people interested and apply for the Spec Explorer for Visual Studio Early Adopter Program (EAP). I just visited Microsoft’s Development Center Copenhagen (MDCC) and presented Model-Based Testing and Spec Explorer to many or our Dynamics testers. Several of them have already explored MBT and some have dabbled with Spec Explorer already. Today I met with Thorkil Sonne from Specialisterne whom I heard speak and met at StarWest 2008. I first heard about his company many months ago and sniggered at their use of “software testers” being almost the opposite of what I and most of Microsoft looks for in software testers. However, my narrow view was, of course, misguided. There will always remain mundane manual tasks in software testing (e.g. verifying the installation instructions work correctly – you must very carefully and precisely follow the instructions – not an automation task). Everything about the company, from the name through logo has been carefully chosen. I can only hope he succeeds in franchising one million of his testers worldwide. November 03 TechEd EMEA Dev talks - Auto Test Creation and MBT with SEI will be presenting at TechEd EMEA 2008 Developers this year in Barcelona, Spain.
Grigori Melnik will interview me about Spec Explorer 2007 in the Fish Bowl for a recorded TechTalk on Tuesday, 11 November 16:00 - 16:30. We will be discussing What’s new about Spec Explorer for Visual Studio vs older versions (SE 2004)? How have people been successful using it?
Thursday, 13 November 9-10:15 in DVP302: Automating Test Creation I’ll be introducing Spec Explorer 2007. Here is the abstract: Most unit tests, functional tests, etc. are hand crafted by people anticipating expected results. With model-based testing (MBT), developers use their skills to create a model that generates both the sequences of calls and their expected results. Models also allow analysis for expected properties and behaviors before the production code is written. Just as test first development can help expose testability issues, model-based approaches can show design issues up front. This talk will show the Spec Explorer plug in for Visual Studio that has been used to verify over 50 of the Windows Protocols and the experiences of product teams using MBT. Come to this session to learn how to find unexpected consequences up front.
I follow that up on Thursday afternoon, 13Nov 15:15-16:30 with an interactive session DVP01-IS Model Based Testing with Spec Explorer Building on the Automating Test Creation break out session, this session will go into more depth about the Visual Studio Team System plug-in, Spec Explorer. Spec Explorer can be used for both model exploration (e.g. checking Liveness or Safety properties with anit-scenarios) and for automatic test generation. Details about parameter generation, state comparison and debugging, and best patterns and practices for adapter design will be covered. Pitfalls new modelers frequently stumble over will be demonstrated with plenty of time for Q&A. In this session, discover through theory, demonstration and best practices discussion, how to enrich the design of any model. The Visual Studio plug in, Spec Explorer 2007, is using an Early Adopter Program (EAP) to get feedback. For more information about the EAP you can mail to speccon at microsoft.com.
October 21 PNCSQC Trip reportJust finished attending Pacific NW Software Conference (PNSQC) 2008 The proceedings (PDF) will be freely available online in about a month. Monday, I attended Janet Gregory’s workshop on Test Quadrants (from Marick’s blog):
Pair testing with Dev+Test and Dev driving (keyboard) help Dev’s understand how testers think. Focus on: “Steel thread” / “thin slice”, that is End to end - something goes thru Once devs do it, they understand Why - improves testability Steel thread code may not be complete - could have some things hard coded. Add layers of testing - multiple steel threads How to intro? Ask them to try it 2-3 iterations. There is a little bit of rework if you don't build bottom up, but more testable.
With FIT tool, Takes time to write fixtures. On average 4 hours/fixture. Initially every new story requires 1 or more next fixtures.
2 different attendees had tried FIT and stopped using it. (Chet Hendrickson also mentioned after Wed. Keynote that FIT wasn’t always suitable for them). Pair (test+dev) in the fixing of a function test so devs don't change the intent of a test.
Critique Product tests are done after code created. Q3 is Exploratory Testing and End2End business scenarios. Q4 is performance and ilities testing. TuesdaySam Kaner’s Art of building consensus focused on meeting leader or facilitator for gathering information meetings and group problem solving. See his Facilitator's Guide to Participatory Decision-Making for many details. This was the basis for LAWST style workshop facilitators. In gauging agreement, he uses 8 point “congruence”
scale. Agile folks have talked about
the first of 5: 5 fingers: Completely and enthusiastically
agreed Brosseau’s “It IS all about you” focused on:
My Birds Of a Feather (BOF) lunch table on Model Based Testing generated good discussions. In the Industry Collaboration panel, Marshall focused on innovation (up/over/down) by abstracting an idea from another field (generalize, up), taking over to your field (over), and then generating equivalent field specific equivalent (generate, down). Hoffman gave analogy of Accounting profession versus software quality profession. Hamlet’s talk (and paper) on Collaboration among software components, shows why system and integration testing are essential and unpredictable even from solidly test components (classes or units). He did a toy example with floating point functions and suggested refining domains into sufficiently small slices to allow prediction of output (sort of like CAD or Finite Element analysis). Toths estimating techniques was an interesting high level comparison of processes and techniques along with factors to take into consideration when choosing. SPIN Meeting on “Agile Planning” started to look a lot like
normal project planning to me (with different names): I’ve requested the slides. WednesdayJeffries keynote was mostly a walk thru of agile principles. The statement that took me longest to grok: Frequent
small features minimize drift and maximize value of Surprise. “Surprised this isn't what we wanted.” Other pithy statement: “Too much design is less fatal than too early design.”
With incremental development, refactoring allows Slowly but surely you square up the pylons and walls. Tedious. This is never fun, just hard the work. The best they know.
Simple Design (4 rules in priority order 1 is top) 1. Run all tests 2. Remove all duplication. 3. Express all design ideas Sometimes Comments to express the Why, Comments should not be necessary for what the code does. Maybe have comment to explain why named function needed 4. Minimize entities (LOC,
methods, classes)
"Stabilization" is just testing because we didn't know what was going on. Testing to know where we are.
McCaffrey’s “Determining best alternative” (MSDN Magazine Nov. 2008 article) was a nice simple review of some simple voting techniques. I was moderator for lunch panel discussion on Does Collaborative Quality help. I was too focused on moderating to absorb content. L Larsen mentioned that handoffs in processes reduce collaboration. Johnson’s storytelling techniques came with nice stories to illustrate some simple points. Smith’s “selling your idea to management” was very short lecture followed by long exercise/practice session. Talk to manager from their perspective (their priorities and commitments). We should do X, Thus I would like you to take action A
Naturally Collaboration is good, but achieving it can be difficult. Agile relies heavily on collaboration.
|
Thanks for visiting!
No namewrote:
Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their local<A href="http://www.game4power.com/">world of warcraft gold</A>watering holes need not worry, however, because the deal is limited to Blizzard's Web sites and Battle.net,the game maker's online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia. <A href="http://www.game4power.com/">buy wow gold</A> Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.<A href="http://www.wowgoldone.com/">cheap wow gold</A>The agency didn't fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,<A href="http://www.itemstores.com/">buy wow items</A> as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,<A href="http://www.gamelevelup.com/">wow power leveling</A>the Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision's new power player, Blizzard Entertainment.<A href="http://www.game4power.com/">buy wow gold</A> from our site ,you'll get more surprises!
Jan. 8
No namewrote:
Your blog is very good, very much like your blog in the article. And you want to become friends. nike air forceNike Jordannike air jordanair jordan shoescheap jordanjordan shoesjordan nikejordan wholesalejordans wholesalenike jordan shoeswholesale air jordanjordan shoes wholesalewholesale jordan shoesjordan nikenike air jordan shoeswholesale nike jordannike shoxwholesale jordannike wholesalewholesale nikewholesale shoescheap nike shoesjordan air forcewholesale nike shoesnike air maxcheap nikeair jordansnike store Wholesale Nike Shoes, Wholesale Jordans, Wholesale handbags, Cheap Jordan shoes Jordan shoes Nike Air Jordan nike Jordan nike shox nike air Jordan nike jordan shoes nike jordans wholesale nike wholesale nike shoes cheap nike nike shoe Jordan wholesale
Nov. 26
|
|||||||||||||||||
|
|