Website User Acceptance Testing (UAT) Essentials | Suraj Shah | Skillshare

Website User Acceptance Testing (UAT) Essentials

Suraj Shah, Director, Solace Digital

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
6 Lessons (50m)
    • 1. Introduction

      2:33
    • 2. Prepare a test plan

      10:10
    • 3. Write a test script

      16:33
    • 4. Run your tests

      11:26
    • 5. Reporting test results and progress

      7:55
    • 6. Conclusion

      1:27

About This Class

When launching a new website: how to prepare a test plan, write test scripts, execute your testing and report on it. In the class project, you will create a test script that is clear and simple to follow.

This class is for those who, before signing off the launch of a new website, need to ensure the website meets the end users’ needs and is in line with what has been agreed with the developers. It’s to help your website visitors have a rich user experience and save you from reputational damage or financial loss if the website that launches doesn’t quite work as intended.

Transcripts

1. Introduction: as you're about to launch your website, you won't ensure that the functionality works and that your website users achieve what they've set out to do. Ensuring that your website works is paramount to reducing the risk of reputational damage or financial loss. Should you website not work as even tended to? I'm sorry chart and I have over two decades of experience in building and launching websites on This includes launching mobile, perhaps websites and Web services for internal and external ordinances within a large airport group. In this class, you learn about the essentials off website user acceptance testing. At times, I'm gonna call it you a T for short. First, we'll start with how to plan your tests and prepare a test plan that helps you look at the wider picture so that you can make sure that you test just the right things in the right way. Then we'll go on to writing your first test script. Then we'll go into how to run your tests and finally how to report on your tests so that your stakeholders can you have confidence that the tests are progressing well and that they can have confidence that the website once launched, will be robust and ready for you end users In the class project, you have the opportunity to write test scripts. There are clear and easy to follow. Before you start the class, I ask that you follow my profile so that you could be one of the first to be informed when new classes are published. Also, consider writing a review at the end of this class so that other students can help make the right decisions about whether they would like to take this class. And of course, you sure to submit your class project into the project gallery so that you can receive support encouragements and gardens for myself. I knew fellow students now on to the class. 2. Prepare a test plan: in this lesson will cover how to prepare a test plan while he could dive right in and won a bunch of ad hoc tests on your website. It's way better to have a test plan so that you can cover all the important areas and have the right resources in place. Carry out the tests. So here's what to consider when planning your tests. First, we'll kept the outcomes. What is it that you actually trying to achieve when you're running you? 80. Secondly, who are the stakeholders for the various people who are involved in the project, those who have a vested interest Those were really keen to be updated about the progress being made. And, of course, next will be looking at your test team. The very people will be carrying out the testing on the website. We'll take a quick look at the platforms, such as the devices and the browsers, that you'll be using the tools to run the tests. And, of course, a factor of time when to start went to conclude and really, how long things won't take and how to best prepare for about. So let's first consider the outcomes. Who's the audience. What do you know about them? Let's say you audience is somebody who might be in later life. So all the people who might have, for example, visual impairments, mobility issues that might struggle to move the mouse. What can you do to make sure that your website is friendly and useful for them to be able to achieve what I look? Institute. Then, of course, what other actual goals while they're looking to achieve when they're on your website? How do you help them to go from where they are at the moment to where they want to get to? What's that? Use a journey for them and then, of course, as you planning your testing, what is a core functionality that must be in place on working before you go live? Without a doubt, this has to be there on in place. How do you make sure that that core functionality is tested for next? Let's stick with stakeholders who is going to be interested in the website User acceptance testing? Could it be the website and uses themselves some people that you've gathered to be able to help make sure that the website functions as you to before it goes live the very people who will be using it at the end. Could it be internal departments or owners or snows? Business onus. Those who actually owned the project. Those are paying for the project. Could it be the senior leadership team? At times, the senior leadership team might be the sponsors of the project itself. Or they might just be really curious and find to find out how the progress is going for the project so they can then report upwards or outwards outside the organization. And then what about project the project manager themselves? The person who's actually responsible for making sure that the project is delivered one time and within budget? Then there are your developers, where your suppliers, those who are actually building the solution. Those who want to make sure that the solution that they developed and and are ready to launch that's actually meeting the needs as per your requirements. And then finally, the ones who are going to carrying out fantastic the testing themselves that individuals will be helping to make sure that each of the steps are run on that the website delivers. Asked expected and it's been tested thoroughly. Next, we'll consider the testing specifically, who's going to be in your test team? So we have a test lead, Somebody who actually helps to lead the testing process to plan out the testing to instruct individual testers on what they were doing each day. What environment will be working within how they'll be progressing and to be able to pull together the reports on testing as well? You have your internal testers. There's within the organization, those who are already part of the team, who are really keen to make sure that your website functions as intended to. Of course, New York have, where possible, your end users as his testes to bring them in from the outside and help your uses B parts of the process to make sure that the website functions as intended. And sometimes you might want to have your website developers as part of the test him, at least for them to be on hand to check and to be aware of the progress being made to be aware of any bugs that are raised so that they can see for themselves firsthand any challenges that you might be facing as you're going through the testing. Next, consider the platforms that you'll be using to be able to carry your tests. So what are the different types of devices that you want to make sure that the website runs well on? Would it be desktops? My both phones, tablets? And what about the various ways in which they displayed? Could they be in portrait mode or landscape mode and also considered the various different responsive design break points? And what this means is that how will the website show up? How will it behave, depending on the size of the screen and the orientation of the screen as well? Beyond the device itself, you have the operating systems. Whether using the Windows machine, it could be a Mac or another system once the actual operating system that you want to make sure that you think this website works for those end users, and also what the typical browsers that you end users will be using. And how do you make sure that the website works for those browsers? It might be Internet Explorer marks of age. Now it could be five folks or Google Chrome. What other version numbers that you want to make sure they this website works for, then a nod to various tools that you might want to use. You go really basic, then use a sheet of paper and a pen. You could work with the word processor and spreadsheet to capture the results of the tests , and he may also want to use the MAWR. Widely used tools such as Jiro, which is a cloud based or self host solution that can help you to upload your wurst, has scripts, run your testing, log the bugs and Long and reporting three to your developers to help resolve them. You might all also want to use enterprise level solutions such as H P's Application Lifecycle Management Tool, which another really powerful, robust tool that could be really useful for some organizations. The final consideration, of course, is time. When will the testing actually commence? Wind doesn't need to be concluded by consider. When is environment that you want to test done going to be available? It could be the devices that using it could be the actual technical solution and the up time for absolution. It could be specific feeds are coming in that powers the website, so specific look up feeds that might might be in place. So what? How do you make sure that the environment is stable and available for those times, then also your testing on the availability of your testers themselves? Are there any annual leaves coming up? They need to be aware off we're about other courses or other times when they might not be available. So how do you make sure that your testers air available what time they wanna test? You might also want to break your testing across into different phases to focus in certain specific areas initially and then going to other phases later on. And then all the other thing to keep in mind is that testing doesn't always work first time around, so it may take a few rounds before the test pass on the look and the bugs get logged, they get resolved. And then re testing is done to keep in mind that even if you have two weeks to do testing, you may need to, um, allow for the bulk of the testing to take place in the first week, a few days for any repairs, and then a few more rounds of testing beyond that to make sure that the website ready for go life so that that's time. That's how you write your test plan. You consider your outcomes what you want to achieve, what you want, the end user to be able to do, thinking from their mindset, from the perspective from the challenges they face, and how do you help them overcome those challenges? Then you think about your stakeholders. The very people who are involved in the project and people have an interest in the project as well is also your test team that people will be carrying out the tests, then the platforms to the devices and the prize is that you might be using tools for conducting and running the tests. We spoke about thing tools such as spreadsheets and word, Post says Google Drive, Jiro HP Aalen and, of course, time when you want to start, when you have finished other factors related to time. So the next step Mr Move on to writing your story first tests Groot 3. Write a test script: now that we've planned, are you, etc. That's going to Lesson three. We'll explore how to write a test grouped. The testing preparation process consists of three core areas. First of all will look at the test cases that we want to be preparing. These are the specific scripts that we want to create, which both positive scripts and negative scripts example of a positive one is where the end user does something that we expect them to do. And it brings about the result, as planned, a negative case. But the one where we expect the end user to take particular path to do something, they might do something a little different to what we expect. I want to ensure that the results of the website delivers. It's still user friendly to help get the user back on the path after crazy. It has scripts. We'll find a way to package them together within a test suite to help us to be able to run the tests effortlessly in a way in which you say in a controlled manner and finally will look to prepare a way in which will be collecting our test results, capturing them and finding a way to then communicate the one. So here's what's considered when writing a test script. Physical, What's in scope? What's specifically are we trying Teoh capture as part of this particular test case? Where is it that we want to test? Or is it that we want to get acceptance on? We don't cover everything under the sun, and that's why what's out of scope is also really, really important. How do you make sure that we cover only what's required and nothing else? Then there are the prerequisites. These are the things theknot tions, things that need to be in place before we can conduct attesting itself. It could be that we expect the website to be up functional and up and running. It could be that he expects this. The various integrations, the look, ups and the feeds of data coming in to be in place before the website would actually work and do as we expected to then were the expected results. What are we expecting from that particular test case? As we wrote the script and finally one of the differences based on the device well, the browser type. So the expected result for particular step may be different, depending on whether it shows up on a desktop computer compared to when a mobile device. And it may also differ depending on the browser that's being used. So these are all the things to consider when writing a test script. Let's start with the scenario before you write test scripts. So in this scenario, consider myself as a man, perhaps in his late forties early fifties, with an aging parents. And that's the parent ages. More and more, it becomes harder and harder to look after them. Yeah, so myself. As a man in my late forties or early fifties, I'm looking to support my aging father. I want to ensure that he gets the best possible care that I cannot for him. So I'm now looking to see what kind of organizations might be able to help with that. And I know that there's an organization called Age UK, and they have local support centres across the UK, So I'm trying to find the one nearest to where I live and also find out if I can pay my visit, go and see them doing the opening out, so I need to know whether based and what time? The ripen. So here's what we're gonna do. Let's run a test group that helps us as Thean user to work out and make sure that the website functions. Bit puppet three to the steps to help us to achieve what we've intended to do, which is to find the location in the phone number off the local age UK center to the key components of a test ripped will be the idea of the script. We need some little reference it the title off this test script. The scenario that we're trying to run. It's part of this case. Any preconditions. For example, the address to look up feature the postcode look up feature would need to be in place. The expected outcome from this What are we expecting me to do with a distantly show us the location? Will you give us stepfather results and then each of the steps that we would take to achieve the expected result and these re numbered steps? So here's an example off a set of set of tests before we actually go into creating a specific test script. So where you'll see you off full different test cases, each with their own script, which is about to come up in the 1st 1 It's an example of a positive test case where well, I'm looking to do. It's simply find a local service by entering a correct in working postcode. The expected outcome is that a recommended local service will show up along with the contact details, and they're opening hours. But then what if I was to make some kind of mistake as I'm typing in the postcode? What if instead of a post good, I might type the name of a town? Or I might use a special character, for example, an exclamation mark instead of the number one in the post? Good. Well, what if the postcode doesn't exist at all? So in negative scenarios 12 and three, we cover each of those negative cases, and the expected outcomes would be that the screen would show an error message. That request valued post good. It's not going to the very first script to show an example of how that would look to this up. Positive test case. This where we are looking to go from entering the correct postcode in finding the right results, and you'll see various columns on him. Script I D, which is the idea of the script and the title just consistent. Throughout this script, Step numbers 13 to 5. And for each specific step the action that the tester would take in the 1st 1 the tester would visit one of the oppressor that particular you are all and then the expected result. So in this case, the age UK website, we show up all the way through to the test to be able to see that shows the recommended look service, the contact details and they're addressing opening outs. Next is an example where a set of examples off negative scenarios, negative cases and here you'll see specific steps required, and we don't need to go right from the beginning off going to the main home page of the lips are we could, in this scenario, go directly to the search page for the local area and started test from that place. So here, negative case one helped us a search on a town instead of a post good and wants to expect to their message that would show up i d. The user friendlier message while then a page. We just stays in internal error. Death doesn't really show anything with clarity. It's the same again we've gotten negative scenario is 12 and three. We see examples of each. Once you've created the various test scripts for each of the cases they want to cover now I want to find a way to be with a package these tests up into a test suite so that it's much more manageable for our testers to be able to carry out and then the care of the tests and then to record the results and to be able to log any bugs as well as part of that. So the test suite, it's really important that it's unimaginable set of tasks and it can be carried out in one sitting. So that doesn't so sort of something that's done across multiple sittings, has just done there and then, and ideally, the total running time would not exceed 30 minutes, and that allows for enough time to run tests end to end, as well as to capturing results and log any defects off what comes up for the side. That might be wrong. On a change of Christ based on doing the test, a suggestion about what could be changed going forward. Also typically one of these packages when the sets of tests would cover a single user journey, not multiple use journeys. And not just one tiny part of the EU's Jennifer I. D. The entire package contains a single use journey to help make sure that we're delivering something not piecemeal mean that is just right for the end user. Keep in mind that the way that these tests are packaged that could be run again in its entirety or just a part of them if any part of it fails. And finally, it could be really useful as part the test suite. Did you find the platform to run this particular test on or the role of the person is testing it to the platform? Could be the device could be operating system. It could be the browser that the that would test will be run on. Here's an example. Offer test suite. What you'll see. The divers calms people that set problem. They got item item, title device and browser. So under the sect, let's start, which set the reserve one. You see that there are four scripts set top for that particular set, which includes the single positive test, as well as a three negative tests that off the scripts have you equated area. And then we're looking for this particular set. Test it on a device, which is the laptop, the surface pro Andi, the Microsoft Edge with browser. And we could specify the moral number of the device, the operating system and the browser version number as well, if you wanted to. Similarly, sets two and three are the same. Very same four strips of equates area. But here there are different devices and browsers, so Michael Air into firing on iPhone success in a Safari browser. Now it's time to work on your project, so your project assignment is to write a test script that was clear and simple to follow. What you're looking to do is to prepare a script that tests each of the steps the usable take to achieve their objective particular test. You're gonna be working on simple. It's a complete and submit the website contact form. Now you can look for any contact form in any website to use as an example and create a script to be able to complete that form and submitted and one of the steps needed to make that happen. Now the questions to consider what outcome Me looking to proof what are the individual steps that you expect the user will take were the expected results. And, of course, if something goes wrong, what do you expect to show on the screen? Your deliverable? What being to take your script, Upload it to Google Sheets document. Make that document publicly available and then within the project. Calorie, submit a public league to your test script spreadsheet in the class. Information also added links for the following two resources You have access to a You A T test script example, and you also have access to a UTI task quipped Template You can use to create your test script. For bonus points, you can write a second script that covers a negative test scenario. So, for example, what happens when the user makes mistake, such as entering and incorrect email address format. Be wonderful to see how you create a negative test scenario, as well as a positive test in area. So now over to you go ahead and right the test script. Make it publicly available, unlisted within the project gallery. Look forward to seeing how you get on and now let's move on to lessen for which is how to run your tests. 4. Run your tests: so having successfully written, you test quips and set up the test suites in less than four, we're now going to explore how to run your tests when running your test. There are five parts. First, you want to set up your test environment and assemble your test team. This means making sure that or you have a room where you can do the testing. They have machines. Devices available, powered on, charged up, ready to be tested with an Internet connection were required and also that you're testing more available in the room with drinks and snacks. Words required to help them get through this testing process Next. Having already planned, this is part of the test suites. You're now going to assign test sets to each individual test team member so that they know what they're going to be working on, which one that sets or which of the sex they're gonna be working on in the morning, in the afternoon and in the next day. If required, the next is to run the tests. So let's go into this in a moment. So now in the next few parts, we're going to running the tests, how to record the results and finally how to long any bugs or defects were discovered is part this process. So now that the test sets have been assigned to each of the team members, it's time to go ahead and run the tests. So I'm gonna seem here that the test leaders signed me. This particular test set, which covers all the scripts don't covered so far, uses the Mac book running Mac OS Andi using the crew browser. Someone has start to go through each of these test cases. Case one case to case we in case force. That's one positive test and three negative tests mark the results in the column Him? It's the first step here is to visit age UK website. So that is live it up here on the page. Step two is in the menu. Select services and find services. Knew you sand services and then find the service knew you that you let up the new area page . Then we're gonna scroll down. I'm clicking to the inter postcode field type in the post Good here and its search. What I'm expecting is that it would load up. Show me the recommended support center near where I live. It's pause, then go into view. Details. It's good. So see the details here. See the website link and the email address is the emergence and website. Okay, expected and finally think the location details. So we're showing the address and the opening hours. Once a click, one of you location details they go is the address and there are there cleaning house. So in my view, that test has now passed. We'll try negative test now. So when a visit services in your area page at this location. Thank you. So it back on this page and now I'm gonna do on the negative tests. So 1st 1 we're talking there area. See what happens when I click. Search is the area that shows up. Please, please enter a valid postcode. And my expected result is this area that shows that request about it first. That's good. It's the page loaded correctly on this step past. Next test is to go back to that same page. Everyone here into that that leads up fine. And now into pass into the postcode with exclamation mark seven. Number one. See what happens if any special characters shop in the post. Good. Again. We have an error. Which Saiz, please enter the value post. Good. It's again. Must. And finally. Negative test case three. We're gonna check. That's again. If I go to page into the postcode, you see one V one A. I've heard that this doesn't work when we see what happens. So I'm expecting is I was shocked with friendly error message and I suggest Dyinto valid post good B instead. Once done, hasn't shown me this page which looks very old, shows an Intel arrow has occurred. And it looks like this particular case wasn't accounted for when this site with life. So even though their first past past the first step past it looks like the 2nd 1 here, second step and where the press prevented has failed. That's a fail. So now I need to log this as a bug. Has a defect reported to developers so they can then go ahead investigate and the result? The issue. So let's now go into looking a defect. In the demonstration we went through, we set up tests and were three each step systematically when he found that on the whole each of the steps past, apart from it turns out, the final one we typed in postcode, which is E. C one V one A. It looks like a legitimate postcode. However, it's not actually a real one and end up showing an error on the screen, which wasn't very user friendly. So let's look at that bug. He's an example off a defect or a bug reports. So there are key components to this that you can see on the screen key parts off that festival. You need a reference number, and I d for that particular defect that you're looking the script I d off the script that you run to get to this place. The title of that script, this step that you took within the script that made this particular error come up. The action that you took to get the stage, the expected result so we would have expected to have shown on the screen the actual result that you got where you actually did see then there's a severity in priority, and this really helps. When you've got a number of different defects over a period time, it helps to prioritize them and work through the work out how much off it is it? How much is it off a blocker to you going live with the website? And how important is it really to severity is about how severe is this particular defect and how much of it is A Is a blocker to the website going life. It's a level one severity, which means the most significant. That means the website cannot go live it'll, But also it means that testing cannot progress any further until this is fixed because it stopped critical and that's how much of an impact it will have on the business. And if it's a lower severity, for example, Level four. But actually it's a a target of problem, but it's not such a significant issue for it to be business critical with priority. It's more project related in the house and how high prior to this, this particular defectives for it to get fixed. And then it helps the developers determine whether it's important that the defect gets fixed before going live. Afterwards, each organization will have its own severity and priority hanging on the way a particular organization is set up. So what's been agreed internally? The three additional bits Information to capture when you're logging this bug first, it's a device that you actually ran the test on. Secondly, the operating system and thirdly, the browser on its version of is already important to help developers work out and make sure don't the test theme the fault is across the board or whether the fault is actually specific to particular device operating system or browser. Now that you've seen how to look a bug, it's time to go into reported. So next we're gonna be looking into. I had to report programs had to report winds diving achieved through unity. Of course, report any bugs, any defects or the change requests that might come out well, the U. N. T has been carried out. 5. Reporting test results and progress: Now that you know how to run your user acceptance tests, record the results and looking you defects. It's not going to how to reports when your test results and the progress that you've been making first full, Just look at Why bother to report? Why is it so important to be able to report the progress of your making and the results of the tests? Well, festival. It helps the project manager to ensure that the project is on track for delivery. It's really important to them, so they know that if there any barriers and your blockers that can really work to move those out of the way to help the project progress and going life. It also builds confidence in senior stakeholders that the website will go live and that it will be fit for purpose. When it does go life encouragement is always great, and the testing team loves to receive the rock and encouragement to help them progress with the testing and the reporting that you do really supports that, and finally reporting informs your developers resupplies off any specific challenges of blockers that might need addressing by them. It's great for them and everyone really visibility early on and throughout the process to increase confidence and to help move things forward. There are two times reports, but we can set up once a daily testing report. So what you see here is an example off report will be sent town at the end of each day of testing the key bits of information there. Ah, the dates of the top, the specific stats that you want to communicate, and then a few words about any successes from the day with key discoveries and even blockers. So that's going to each of these tests. Carried out are the number of tests that you would have carried out number test scripts that would have been run in that particular day. This could be made up off, say, five different test sets. It's part of you. Test me. Then there are the number of tests that have passed. The remainder would be the number of tests. Death without failed. It's a very simple, clear pass or fail. There's no in between. Then. There are a number of defects stabbing raise that day as part of the testing that's been carried out. Then it's the plan Progress, which is what you expected, that the progress that you would have expected to be have made by this point. And then finally, it's the actual progress. So how much is actually made based on what you planned? Example here shows that is 10% higher. There was turned, which means you ahead of the game. As for success is a key discoveries. No, it's really opportunity to share some of the successes from a day. Well, anything else we've discovered as a team, you want to communicate one to other stakeholders. And finally, your blockers, anything that you feel you want, communicates well, you need to communicate. That helps to share where the testing team is stuck and whether any help to get results so that they can continue to progress for testing. An example here is that earlier we looked at the address Look up field. So when you doing search by postcode to find a local age UK service and in case that feed is broken for some reason, in case that date isn't coming through to be able to do the look up. But that would Inder being testing that you want to do in that particular area. It is important to mention that here on the daily testing reports next, we have an overall testing report to show all the test sets on the specific tests have been carried out and the outcomes from that test so we'll see here is that all the tests in SET one have passed so specific to that example. It was all the tests that we had ready scripts that we had ready on a service pro device using marks of edge they had all passed. No need to do rounds two or three. However, If you look at test set to, you'll see that they were run on the Mac book air on Safari and Muslim past, but one particular one failed. Which negative tests? Three. So then what's you could have done is do a second round of testing and only do testing off the specific items that have failed and then see if they pass. If they still don't pass that he can look to do the third round of testing. And in test set three, what you find there is this example. It's using the iPhone running safari tests scripts 12 and three have passed before has failed in the second round. I didn't bother with want test scripts 12 and three because I'd already paused again, trying to script for again that failed. So now in the third round, having hopefully having all the items fixed, the decision might be made that let's go ahead and run, being tires up tests again for this particular device and browser. And that's where this is really useful to be able to lock this. And here we see that, actually, now we've got confidence that the entire journey has passed and therefore we're good to go live for this particular test suite and therefore good to go live based on what we've seen so far. So once you're ready to go live, it's really a case off packing up your test environment in making sure you plan some time to celebrate the success with a team which would be initially your testing team but also the wider project team. So going get together with a group, have a few drinks and celebrate the fact that it's gonna successfully go live and your end users. I got an experience, a very rich use, a journey as part of the work that you've done. Congratulations 6. Conclusion: congratulations on completing the website User Acceptance Testing Essentials Class. You are now able to prepare a test plan. You can now write attack script. You also know how to run these tests and how to report in them so that you can engage your stakeholders and help them to see how the tests are progressing and which ones have passed , which was a failed now that the classes complete it. I ask that you reviewed the class so that other students can see the benefits offered A in this class, to be sure to post your projects in the Project gallery so that you can receive encouragement, support and guidance from myself and your fellow students. And of course, I encourage you to follow my profile so you could be one of the first to be informed when new classes are published. Thank you for taking this class and I wish you well. As it continued to build and launch websites and launch them with confidence