0

Fear, A Major Speed Bump on the Road to Quality

by Angela 3. February 2017 22:26

I warned you that I’d be blogging about the “messiness” of ALM and DevOps consulting. And this is a long one so grab a cup of coffee, tea, or cocktail of your choice (whatever I won’t judge). It’s actually based on something I wrote for the QAI Quest Magazine. If you haven’t checked out the CQAA (Chicago Quality Assurance Association) community or their upcoming QUEST conference in Chicago this April, I highly recommend it!

Anyway, here is the article:

A large part of my job as a scrum master and agile coach is focusing on quality. Quality of process, quality of teams, and quality of software. While all of these can be challenging to improve, one of the hardest to tackle is quality of the team. I’m not talking about individual’s skillsets, although that is important. I’m talking about the ability of the team to work together as a WHOLE. In my experience, teams that cannot accomplish this cannot produce a quality product. Missed requirements, sloppy handoffs, miscommunication of what is “done”, and a host of other issues arise when the team just can’t seem to come together in a truly open and collaborative environment. Causes for this failure are complex and will vary from team to team. But one that I run into time and time again is fear. Yes, fear!

I’m not a psychologist and I don’t purport to know all the answers, but I can speak from experience - both in terms of myself and what I see in others. I have seen fear manifest itself in the following situations:

· Underestimating feature delivery times to hide a lack of confidence, often leading to painful sprint reviews when committed features aren’t delivered on time, or not at all.

· Code being integrated too soon to avoid being late, resulting in bugs “leaking” into production.

· Misunderstood requirements being implemented without question, and promptly being rejected by QA or a frustrated product owner.

· Resentment when team members feel someone is not pulling their weight, when in reality that person is silently struggling.

· Failure by team members to ask for clarification because everyone else surely must “get it”.

The fear of being seen as not good enough or smart enough by our peers is real and pervasive in IT. Ironically, the end result of hiding our struggles is often working extra hours and even cutting corners to make the unrealistic deadlines that we set for ourselves. This inevitably leads to doing the very thing we are fearful of … letting people down.

Tying this back to quality:

· Imagine if the team was afraid to admit that a requirement was vague, that it would be extremely complex to develop, or almost impossible to adequately test.

· Imagine if they assumed they’d figure it out as they go and plowed ahead.

· Imagine if someone on the team rushed to complete a feature and skimped on testing to prevent blowing their estimates because of fear of retribution for being wrong.

You probably don’t have to imagine it. It’s likely happening on your team right now but no one is talking about it! So, what can you do once you’ve realized that fear is holding you or your team back? What I have learned on my own journey is that it’s not enough to recognize when I am acting from a place of fear; I also have to recognize it in others. And much like quality, it is EVERYONE’S responsibility to create a collaborative and supportive environment.

As a Scrum Master, here are some of the things that I ask myself in order to help address fear on my teams.

· Is someone new to the team, or to their role, and clearly feeling overwhelmed or struggling to fit in?

· Is someone is hesitating to speak up when they clearly have a strong opinion or idea?

· Are people afraid of being judged harshly or told their idea is “crazy” or “dumb” in a team setting?

 

Now, that’s a lot of stuff to keep an eye on. (Hey…no one ever said that being the Scrum Master was an easy job.) So, let’s say that you notice something. What do you do about it? How do you head-off fear and/or actually do something about it?

Well, if someone on the team shares a concern or asks for help, be sure to thank them for bringing it up and offer them support, or try to connect them with someone who can. If people are hesitant to speak up in a large group setting, approach them after the meeting, and discuss it in a more casual environment. If they need some encouragement or support, find a way to share their ideas with the team in a less intimidating way. Find ways to bring new team members on-board and make them feel connected quickly. Make sure no one is discouraging open and honest conversation by dominating conversations or by openly criticizing ideas or opinions, even jokingly. Joking, while good natured, can be misconstrued as criticism, and simply telling a teammate that they “just can’t take a joke” is a great way to alienate them and ensure their participation in future activities is limited. Besides, some of the biggest discoveries in history started with an original premise that was totally out there!

I’ve given talks on fear at a number of conferences, and every time people have approached me afterwards saying “I feel that way too. It’s so good to know I am not alone!” Research shows that around 70% of people struggle with these kinds of fears, and based on my experience, it is higher in IT! That means that in any given meeting you attend, MOST of the people in the room are afraid to share their thoughts for fear of negative consequences. Imagine all of the great ideas being squandered and land mines we are failing to avoid.

Hopefully you’re already thinking of ways to improve the quality of your team, and ultimately of the products you are delivering. Strive to be more vigilant, more supportive, more honest, and you will be well on your way to creating a high-quality and high-performing team!

 

If you’re attending quest, I also have a few sessions there that you may want to check out if this article spoke to you.

Getting Your Agile Team Unstuck! Tips and Tricks for Avoiding Common Agile Setbacks: http://qaiquest.org/2017/sessions/half-day-tutorial-getting-your-agile-team-unstuck-tips-and-tricks-for-avoiding-common-agile-setbacks/

Fear and (Self) Loathing in IT: A Healthy Discussion on Imposter Syndrome: http://qaiquest.org/2017/sessions/fear-and-self-loathing-in-it-a-healthy-discussion-on-imposter-syndrome/ 

And if you’re not attending Quest feel free to send me a message via this blog or on Twitter!

0

Chicago DevOps Community Roadshow–April 2016 Recap

by Angela 22. April 2016 09:41

Last week myself and some of my favorite community leaders and MVPs were able to deliver a free community event focusing on DevOps practices and tools thanks to the generosity of Microsoft. Not only did Microsoft provide the great venue for free, but they also supplied the funding that covered a great hot breakfast, beverages, and a Microsoft Band 2 for the raffle!

2016-04-15 07.26.31

We had over 100 people register, and people started trickling in early. We had a surprising number of enthusiastic attendees already seated and ready for Jim’s 8:30am keynote!

2016-04-15 08.37.10

Next we had some great talks by Landan, Erik, Chris, Min, and Greg. Topics included continuous integration with Visual Studio and TFS 2015, environment provisioning and DSC with Azure, release management with TFS RM and Octopus Deploy, and metrics and monitoring with Application Insights and SonarQube.

2016-04-15 08.50.042016-04-15 09.43.392016-04-15 10.54.122016-04-15 11.22.08

 

There was a lot of great discussion, some awesome demos, and everyone had a great time. Thanks again to my rock star team - Eric Boyd, Landan Rotter, Angela Dugan, Greg Levenhagen, Chris Taylor, Jim Szubryt, and Min Maung - who seems to not really like any of us enough to stand next to us Smile

2016-04-15 12.57.28-1

Slides from the event are still being uploaded, but you’ll be able to access everything here. Thanks again for attending, and if you didn’t make it and would like to learn more about any of these topics, shout at me on email (via the link at the bottom of this blog post) or twitter and I’ll connect you with the right people!

0

Chicago Code Camp Call for Speakers is Open

by Angela 17. February 2016 08:52

In case you haven’t heard, Chicago Code Camp call for speakers opened last week and we need you! Not heard of Chicago Code Camp? Well, grab a cup of coffee and pull up a chair because we have a great story! This is our 8th year, and once again we’ll be staying in downtown Chicago at the Illinois Institute of Technology to make sure we are centrally located and easy to get to by car, train, or subway. It is a day to learn from the community. It is a day to contribute to the community. Please join us by sponsoring, attending, speaking, or all three! We cannot be successful without you. 

The mission of Chicago Code Camp is to provide a credible resource within the IT industry. Our goal is to offer a wide range of opportunities to learn about advancements in our field, to share knowledge from our experiences, and to develop valued relationships with our peers. To that end, Chicago Code Camp is a FREE, day-long event. We are here to connect the talent and expertise within the Developer community of the Windy City, and that includes YOU. Discussions for the day have previously included development and trending topics in .net, java, open sourced frameworks, web, mobile, cloud, robotics, testing, soft skills, and more.

So what ideas, technologies, or strategies do you want to share with us? Everyone has something to contribute, whether its information on a new JavaScript framework, teaching us how to leverage Docker to strengthen our DevOps practices, sharing experiences adopting scrum, or how to handle ourselves better in job interviews. We are looking for a broad set of experiences across just about any topic related to being a technology professional.

Note on our selection process: In order to be fair towards all the speakers who submit for sessions for the Code Camp, the speakers are chosen via a blind voting process by the Chicago Code Camp Advisory Council (CCCAC). The advisory council is made up of various local and regional user group leaders and industry experts. The council will only see the topic title, abstract, and level of difficulty of the talk when voting for the abstract. The council does not have access to the presenter's information. The abstracts with highest votes are then placed into tracks and presenters are notified.

So take a few minutes to absorb some caffeine, think about some topics you’d be willing to share with the rest of the tech community in Chicago, then submit your ideas here: http://www.chicagocodecamp.com/Submissions/WantToShare

 

Hope to see you at Chicago Code Camp this April!  Oh, and general registration is not open yet, but stay tuned for news on that Smile

0

Still Running TFS 2010? It’s Aging Out of Support Next Month. Polaris Solutions Can Help You Upgrade Quickly

by Angela 4. June 2015 12:04

You heard me correctly, mainstream support for TFS 2010 ends on July 14th, less than 6 weeks from today! So if you’re thinking “it still WORKS, why should I upgrade?” Consider these points…

  • Any issues arising with your server will NOT be patched or serviced by Microsoft support, and it will be harder and harder to find experienced people to work on it (well, who WANT to work on it)
  • Your infrastructure team may be chomping at the bit to stop supporting the old operating systems and SQL Server versions that TFS is running on
  • You’re missing out on some amazing new capabilities that it would take me hours to cover and that I promise will revolutionize the way you develop and deliver software
  • You attract great new talent by offering robust and modern development environments, trust me on this
  • I can tell you from a LOT of personal experience, that the longer you wait to upgrade, the harder and more time consuming it is!

The good news is that you may qualify for up to $5,000 worth of free services to help you plan and prepare for your upgrade through the Microsoft Deployment Planning Services program (DTDPS)! Wondering what that is? Below is a quick FAQ that I created to explain the program:

Now what exactly IS DTDPS? Well first of all it’s a Microsoft offering, so expect MANY acronyms to follow. DTDPS stands for Developer Tools Deployment Planning Services. Specifically, the development tools that these services are meant to be used in conjunction with are the Microsoft Visual Studio ALM platform - Team Foundation Server, Visual Studio, and Microsoft Test Manager (TFS, VS, and MTM for good measure). 

So what does this really do for me? While most people are already very familiar with Visual Studio from a .NET development perspective, many people who own the other tools within the TFS platform are not taking full advantage of them. DTDPS is the solution to this problem, connecting customers with the right partners to make sure they are getting the full value of their ALM investment. Software that sits on the shelf is a huge waste of money.  And from Microsoft’s perspective is something you’re not likely to buy again, so it is of course in their interest to offer such a program.

What kinds of services are included in DTDPS? Currently there are 4 DTDPS offerings available: TFS deployment planning assessment, Visual Studio Quality Tools assessment, Visual Studio Agile Deployment Assessment, and Visual Studio DevOps Deployment Assessment. You’ll notice a theme here, the word “planning”. These engagements are not meant to be used to implement the tools. Instead, they are short, fixed-length (3 and 5 days) engagements for gathering data and analyzing your current environment and needs in order for us to help you build a plan for implementation and adoption of Visual Studio and TFS ALM tooling. It’s a great kickstart and will drastically accelerate your ALM initiatives.

But what if I don’t need one of those services, but need other assistance with TFS? Well, it depends. I know, I know, typical consulting answer. These programs can be expanded upon to assist customers with other ALM related concerns, so drop me a line at the email I provide below, and I’ll be happy to discuss it with you in more detail. 

Who delivers the engagement? DTDPS is a program delivered through certified and experienced ALM partners like Polaris Solutions to help customers with SA (Software Assurance) benefits to take full advantage of the tools they own.  We have delivered dozens of these engagements over the past few years and every customer we have worked with has been extremely happy with the valuable roadmaps that we delivered. You will benefit from a wealth of relevant experience and proven ALM practices that only comes from us having deployed and leveraged the tools in a large number of different environments and business verticals.

OK, I’m intrigued, but how expensive is it? It is FREE. Seriously, and absolutely.  This benefit is available to customers who purchase Microsoft products with SA, think of it as a rewards program. In fact, you may have DTDPS credits without knowing it!  Many of the customers I work with did not know they had DTDPS credits available until I turned them onto the program.

I want in! How do I sign up?  Start at the DTDPS site. Here you can peruse the various services available and see which ones are right for you and your organization.  Then check out the DTDPS QuickStart guide which walks you through the steps of accessing your benefits.  Then you just pick a partner to work with, like us, and you’re on your way to a better way of doing ALM!

 

If you are interested in learning more about DTDPS, or if you would like to find out more about getting a free quick assessment of the effort required to upgrade and the benefits that your team would enjoy, please contact me at Angela@PolarisSolutions.com. And if you know anyone still using an older version of TFS (anyone running TFS 2013 or earlier qualifies) help them out and point them to this blog!

0

Referencing and Copying Test Cases in MTM 2013, a Lesson in Patience

by Angela 22. August 2014 15:49

Recently, I’ve had some lengthy discussions about test case, suite, and plan copying in Microsoft Test Manager (MTM), and it something that a lot of people are struggling with. In some cases, people are not even aware that you can do all of these things, let alone the subtle differences around what they are doing behind the scenes. Either way, hope this sheds some light on another way that MTM helps you to manage your testing efforts. There are a handful of methods for reusing test cases across multiple test suites and plans.

1) Add existing test cases – also known as re-using a test case by referencing it. So, in MTM, test cases are by default REFERENCED when you add them to test plans/suites.  You do this through the Add button in the Plan tab of MTM.

image

The implication for using Add is that you need the EXACT SAME test case in multiple places, and if the test case changes it needs to change everywhere. So if I add a test case to 3 different test suites, any change to the test case is reflected in all 3 places automatically. Think of the test case instances that you see in the suites as pointers back to the original test case. Handy! Or annoying depending on your test versioning strategy. As an added bonus, with Add you can pull in test cases from any test plan in the team project collection by simply removing the @Project clause on the query!

image

 

2) Create test suites by referencing existing test cases performs a shallow copy of test suites from a different test plan within the current team project, allowing you to easily reference its test cases. There are 2 places where you will find this option, in the context menu of the Test Plan, as well as in the MTM menu bar of the Plan | Contents tab.

image

image

In MTM 2010, this option was called “Copy test suites from another plan” , which to most reasonable folks sounded like it copied everything. But it was not really a full copy of everything, it was actually a brand new test suite based on the original suite, and the suite contains REFERENCES back to the original test cases. As you can see, in MTM 2013, the menu option is now more explicit about what it is doing. The brand new suite has a new ID and the same name as the original test suite, it also includes all of the original test cases but is just referencing the test cases and their associated requirements. Changing the new test suite does not affect the original suite, but remember that changing the test cases in the new test suite would change the test cases in the original test suite. Also, note that this can only happen across different test plans in the same Team Project, so you cannot use this feature to duplicate test suites into the test plan you are currently in, or to duplicate test suites across Team Project boundaries. Maybe that is an edge case, but people have asked me if they could do it.

But what about the cases where you really do need to effectively BRANCH those test cases?  Say you have a new version of some functionality, but you still need to support the original functionality, and so you need to have two slightly different versions of the same test case. Well, you have yet another option – Copy. Technically you have a few more options yet.

3) Create copy and add to suite is a shallow clone operation on just a single test case. Accessible in the MTM client, you just right click on any test case, and use this tool to create a new copy of the test case, and save it into the test suite that you are currently in. All links, comments, steps, parameters (shared and otherwise), and properties are carried over - but new versions of all of these related items were not created. The new test case refers back to the same links, parameters, etc. of the original test case, and even links back to the original test case so you can see how it originated. Test run results associated to the test case are NOT copied over. Attachments are NOT copied in this case either. And again the scope is the current Team project, current test plan, and current test suite. I cannot cross Team project, test plan, or test suite boundaries with this command.

image

But we’re not done!

4) You might have noticed a Copy (CTRL + C) option in that context menu in the MTM desktop client as well. Don’t be fooled, this just creates another reference to the original test case wherever you paste.  So while it is similar to using the Add button, I can only Copy a test case using this command into another test suite within the same test plan. In other words, it does not work across Team Project or Test Plan boundaries, but it MUST be used across test suite boundaries. And in this case, Copy actually means reference, instead of you know, copy. I know, really? OK, one more option to cover in this blog post.

5) Create a copy of this work item (including links) is the Copy option available only on the web, and it is slightly different than the options available in the desktop version of MTM. This appears to just be the standard Copy Work Item context menu option that you can access anywhere on the web, and nothing specific to the test tools. Clear as mud, right?

Honestly, I’m also having a hard time understanding how it is SUPPOSED to work because it has some odd behavior in my opinion (on VSOnline anyway). It allows you to specify a “Project” in the creation dialog, which I assume means TEAM PROJECT, like it does when you are creating copies of any other work item type from the web. The new test case work item is created in the specified project, with the same references as the original work item, but also adds it to the existing test suite in the current project. I assumed it would only create the new test case in the team project specified. Apparently not. So it does the same type of copy that Create copy and add to suite does, but allows you to do it across team project boundaries. image

image 

Frustrated yet? I know I am and I’ve been using these tools for years. It’s a lot to keep straight, and even I sometimes forget which options bring over which links and artifacts so I have to refer back to the handy tables available on MSDN.  Definitely talk to your team and decide which options to use and when.

Oh, yeah, and cloning is also an option now, but that is another larger discussion so stay tuned for another blog post on that one.

0

TFS 2013.3 CTP – What I’m Most Excited About: Part 1

by Angela 4. June 2014 19:57

Did you hear that there is a CTP of TFS2013.3? In case you missed Brian’s blog post, there is some really great stuff in there! I’m really jazzed about the big, BIG changes to Test Plans and Test Suites. They’re now work items! Now, in case you’re not sure why this is a big change, in the past Test Plans and Suites were not items you could customize or query, like you could Tasks, Bugs, etc.

The first step is upgrading.

image

The process is very similar to every other upgrade or update you’ve applied. So pretty darn easy. Fortunately, it’s also a super fast process.

image

Took under 15 minutes from start to finish for me, although admittedly I have a fairly small implementation with just 2 Team Project Collections and a handful of Team Projects on each. A *lot* is happening behind the scenes, including some major data transformations, so if you plan to take on this update when it releases it would be a GREAT idea to run the upgrade against a clone of your full production databases in a test environment. Not only to get an idea of the time it will take for your production upgrade, but to ensure you don’t encounter any unexpected issues. Particularly if you are heavy users of Test Plans, Test Suites, and Test Case work items. You can use these backup and restore instructions to create a test instance of your collection databases. And since I was updating from TFS 2013.2. there wasn’t even anything to configure once it was done for everything to work, just update and go!

Be sure to download it here and install it, but not in production eh? It’s not a go-live, but it’s worth checking out on your own instance of TFS :) I’m currently testing out all kinds of new features available to me, and will be sure to post a few follow-ups to this post detailing why this update will rock your world soon!

0

A few more little nuggets of goodness in TFS 2013.2

by Angela 22. May 2014 13:59

Are you still hedging on installing update 2 for TFS 2013? OK, c’mon now, we’ve installed it for a number of clients and are running it ourselves.  It’s stable, it’s OK, just install it.  Not convinced?  Well on top of the great features I mentioned in my initial post about TFS 2013.2 RC, here are some additional features that might just push you over the edge to install the RTM version. None of the are mind-blowing, but honestly, they made a big impact on me personally.  Any less click I have to do to finish a daily task equates to a lot less annoyance in my life.  So here we go…

Team Days Off

So hopefully you’re not looking at this wondering “what the heck is THAT for?”. Because capacity planning is a must for any team, but entering time off could be a pain when you were looking at large teams with upcoming holidays. But if you look closely you might notice a new button at the bottom of the capacity planning tab called “Team Days Off”.

image

Loved this for Memorial Day! Small change, but big impact for people managing teams in TFS.

image

Sure maybe it’s only happening once per iteration, but what if you have weekly sprints? Even a small team of say 7 people equates to setting up days off 7 times a week as opposed to once. That’s like 30 clicks they just saved me, for just this one team! I have many teams on many projects. MATH.

Shared Parameters

OK, so this is a pretty big one. Something I hear a LOT is that parameter management can be really daunting for large teams where a lot of the same parameters get used across multiple test cases that are not leveraging common shared steps. How on earth do you keep track of them, update them consistently, and coordinate across teams to prevent duplication? Well, now you don’t have to! So in the client tools you’ll notice when working with parameters, that there is a new link to manage shared parameters on the web. Why only on the web? Because agile, and this is what you have NOW, which is better than 3 weeks ago which was NO shared parameters anywhere. My hope* is that it gets into the client in a future sprint, but right now it’s only on the web.

image 

So once you click the client link you’ll be redirected to the TFS web tools, where you will find it in the Test tab. Don’t see the Test tab? Well you need to be licensed for Visual Studio Premium or Test professional AND you have to be in the right Access Level.

image

From here you can manage parameter sets to be reused across multiple test cases. 

image

Any changes you make to these parameters effect every test case using them. HUZZAH!  It might not be entirely intuitive how to use them though. So in each test case work item, you now have the opportunity to not only use shared parameters, but to create shared parameters from existing ones. Simply open a test case work item and scroll down the the bottome where the parameter section is.  Here you’ll see both options:

image

Lets create a shared parameter so we can reuse the set of usernames:

image

image

It works much the same way that reverse engineering shared steps did. Pretty easy! And now I have another set of shared parameters I can leverage across my test cases:

image

And here is the icing on top, there’s traceability, yes, traceability.  So you can even find out what test cases are using the shared parameters that you create, and vice versa.  Just switch to the properties view of the shared parameter in question.

image

Did you hear that? I think it is a chorus of cherubs singing :)  If you don’t do a lot of QA like me, this may not seem earth-shattering, but trust me. This is going to save me a lot of time, and a lot of clicks. Hey, I have carpal tunnel, saving clicks is a big deal to me, and not just because I’m lazy.

So there you go, 2 more very compelling features to hopefully convince you to upgrade your TFS instance to TFS 2013.2. Stay tuned for more TFS goodness…

 

*seriously, I don’t know for sure and even if I did I wouldn’t tell you.

0

What Conference? Yeah ThatConference

by Angela 15. May 2014 08:49

With so many conferences, it’s easy for one to get lost in the noise. But don’t let that happen with ThatConference. I know, “but Angela you’re on the conference committee, of course you think I should go”. It’s true, for several years now I’ve been working with the ThatConference gang to keep this thing growing and thriving, but it’s because I believe in it. We don’t get paid, we get nothing out of being on the committee other than knowing we got to help provide this awesome event to the community we are so proud to be a part of. OK, now I’m getting all sappy so let’s move on. The point is, this conference is literally organized by a bunch of us techies and geeks like you, not huge corporations or software vendors with an agenda or licenses to sell.  We strive to make the conference fun, educational, and family-friendly. So I mean it when I say this conference is FOR YOU.

Tickets went on sale today, and you may have noticed a slight uptick in prices. Yeah, things get more expensive every year, that’s life, but is STILL an incredible value at $399. That includes 3 full days of amazing sessions (125+ to choose from!) AND lots of networking opportunities AND a pig roast AND a private water park party just for ThatConference attendees AND a Bacon bar AND multiple social events AND a game night (I might be biased as I am running this one, but seriously, BOARD GAMES!!). That was a lot of ANDs for your money. And if you buy soon you can get an Early Bird discount of $25 making the conference just $374.99. You also get a discounted nightly rate at the water park resort if you’re not a local, which gets you some nice additional perks (last year we got free passes to the Ducks and Tommy Bartlett show with our room). That’s an incredibly inexpensive conference that you can combine with a great family summer vacation in the Wisconsin Dells! The topics being covered this year are incredibly diverse, I’d need a few paragraphs more just to cover them all and no one wants to read that much so check out the full conference schedule here. And don’t be afraid to ask your boss to sponsor your ticket, and maybe send a few of your coworkers too!  If they have any budget set aside for training, I can’t think of a better way to use it.  You’ll get exposed to a far wider range of topics and our food is WAY better too ;)

As you might know if you are a returning camper, we also have a great program for the families, so bring the significant others and kids if you have them. It’s a last hurrah before school at a water park and indoor amusement park. You’ll be a HERO and you still get to go geek out at a tech conference! If you purchase family tickets along with your conference ticket, family members are just $39.99 per person, or $29.99 if purchased before 5/22. That means the entire family can join us at ThatConference social events, the pig roast, game night, a craft night that I organize just for the kids, and of course an entire track devoted to family friendly geekery. And trust me when I say the family sessions will blow their minds! Last year my 10 year old nephew was introduced to programming for the first time (he even used Visual Studio for one session!), and ended up stealing my laptop so he could play around with it some more. How cool is that?!  This year we even have a couple of session being run by kid campers from last year! There’s even a session on writing Minecraft Mods. I know right? The family schedule is here, and it’s REALLY good so look it over, show it to your kids, then sign them up!

Hope to see you In August! Now go sign up, seriously right now, go do it.

0

It’s THAT Time Again – ThatConference Call for Speakers is Open

by Angela 3. April 2014 12:00

So if you’ve been reading my blog for a while, you probably already know about ThatConference? If you’re already a raving fan, skip ahead to the next paragraph. If not, well, let me tell you a little bit about it. There are a LOT of conferences going on if you’re in the Chicago area, but don’t think of this as just another conference. ThatConference kicked off in 2012, we had a lot of enthusiasm and an impressive turnout for a year 1 conference, it was definitely a success! In our second year, things really exploded. We had a lot more speakers, so many amazing sessions to pick from, and the family participation was out of this world. My own nephew, who lives in California, said that he couldn’t see why we wouldn’t just make ThatConference a family vacation every year. He had SO much fun, and really loved the kids programming classes.

So back to my original thought. ThatConference 2014 call for speakers is LIVE, and it’s already several days in which means you have just 11 more days to submit your talk! After April 14th, we have to start sorting, categorizing, and sifting through all of the amazing options to create a schedule that lives up to the ThatConference goal of offering a wide variety of interesting and in-depth topics that spark ideas, and will appeal to the community at large. We accept talks on any technology, platform, or language. We also love seeing talks on career development, user experience, quality assurance, it doesn’t have to be purely related to code! When you submit, please be detailed, be passionate, be unique, and be sure to follow the guidelines outlined on the submission site. We do not know who submits when voting on the talks that will make it into the agenda, we truly focus on CONTENT. And a word of advice, I can’t stress enough how important the quality of the submissions are. We get many HUNDREDS of submissions and we only have space for about 1/4 of them, so talks with vague descriptions or that cover really basic and common topics that a dozen other people are also submitting are less likely to stand out.

So hurry up! You DO have something valuable and interesting to share. And don’t worry, if you’re not the type of person who likes speaking in front of large crowds, but knows you have something to share, there are lots of opportunities to network and there are plenty of open spaces sessions too. Hope to see you at ThatConference this year!

Tags:

conference | ThatConference | technology | Azure | Open Source | Quality Assurance | Software Testing | Team Foundation Server | Visual Studio | Windows 8 | Windows Phone | .NET | Application Lifecycle Management | C# | career

0

Data Driving a Web Service Performance Test in VS 2013

by Angela 20. March 2014 17:35

Now, I’ll admit that all of this is technically documented on this page on MSDN, but it isn’t super obvious sometimes exactly what something should look like when it is done. And for non-technical folks, having a nice handy tutorial with images can be a huge help. I have a few client folks right now that needed something like this, so rather than only share it with them I thought I would post this on-line for everyone’s benefit.  ANYONE can follow along with this, I am using a public web service. I specifically was doing this on VS 2013, but this should on any version back to 2005, so long as it is either Ultimate or Team Suite.  I am assuming you already have some basic knowledge of web performance testing, but if you don’t check out this exercise first.

First identify a web service you would like to test, and choose and operation. You could also wrote your own web service, I’m not feeling THAT ambitious today. I am using a public Weather service and the “GetCityForecastByZip” operation as seen below:image

1) Create an empty web performance test, so immediately stop recording when the recording tool starts up in the browser.

image

2) Let Visual Studio resume. Add a web service request to the empty web performance test:

image

3) Enter the URL for the web service via the Properties panel (“http://wsf.cdyne.com/WeatherWS/Weather.asmx”). It should look like this:

image

4) Grab the Soap Body from the Web Service page, it should look like this:

image

5) Enter “text/xml” for content type and place the soap body from your clipboard in the String body of the web service via the Properties pane. It should look like this:

image

6) Add a header to the service request:

image

7) Grab the SoapAction from the Web Service page:

image

8) In the Properties pane, add a key value pair of “SoapAction”, and the SoapAction from your clipboard. It should look like this:

image

9) Now the basics are configured, but we want to be able to pass in a zip code. To keep things easy for the first pass, let’s just hard code that sucker. I know, bad practice, but we’ll change it soon. Open the StringBody and replace the parameter with a value:

image

Now run the test and see weather for my town, it’s quite lovely today :)

image

 

But this is not really exciting, we should data drive this.  Let’s create a data source with some zip codes to truly exercise this service.

1) Add a few rows to an excel sheet with valid and even invalid values, use a column header of Zip and save as CSV. Save someplace easy like the desktop, you’ll need to refer to it later:

image

2) Add a data source to your web service test:

image

3) Use the data source wizard to choose the CSV file that you just created, and add it to your solution. We could point to a shared repository instead, but for now let’s keep it simple and add it to our project when you are prompted to do so.

image

You should now see something similar to this:

image

4) Now we want to data drive the the Zip code rather than use a single hard coded value. To do this, we need to embed a reference to the data source inside the String Body. So where before you just hard-coded “60304” we now add a reference to the Zip field in the data source we imported with the following syntax {{DataSourceName.TableName.ColumnName}}. It should look like this:

image

5) Now most likely your test settings are still defaulted to running web performance tests just once. Let’s open your testsettings and make sure we spin through every row in the data source:

image

6) Now go to the Web Test section, and choose “One run per data source row”. Your settings should look similar to this:

image

7) Run the test again. It should now run once for each row, returning an appropriate response for each.

image

 

Huzzah! Super easy right? Now give it a try yourself…

Powered by BlogEngine.NET 2.7.0.0
Original Design by Laptop Geek, Adapted by onesoft