1. Discuss how Web testing is different from GUI testing. What are some challenges in web testing that makes it distinct from general GUI testing? GUI testing can be considered a part of web testing. Web testing has many other aspects which are different from GUI testing. First, it depends much more on the platform: operating systems and browsers. Web can be used anywhere from laptop to cell phones. Also, web requires communications between client and server, which can easily be interrupted. For example, normal GUI applications do not have back, forward or stop buttons. Moreover, web testing also involves with other non GUI-related issues: concurrency, load balancing, security, etc. 2. Why might it be desirable to prune cycles when searching through links on a web page? Why might it not be desirable? Clearly, the state space of a Web site can be huge, even infinite. Therefore, it is often necessary in practice to limit the size of the state space using various techniques. One source of inefficiency in the search is cycle, which results in visiting the same pages many times. If the page is static, it is more desirable to visit that page only once. Thus, pruning cycles is preferred. However, in today's web site, there are a lot of dynamic pages. Each visit on the same page can produce different results. For example, a login page when you have logged in and when you have not. In this case, pruning cycles may be not preferred. 3. What does one have to do in order to account for changes in the forms themselves? Does one have to re-write the smart profile from scratch? Can it be reused? How? No, they do not have to rewrite from scratch. It can be reused. Recall that smart profiles consist of "signature" and "profile". Signature is like a class in object-oriented programming. It contains field names. Each name has a synonym. To account for changes in the forms, testers have to check each field name in the updated forms with signature. Synonym may have to be modified to cover the new name. Also, profile contains a set of values that can be filled in the forms by specifying regular expressions that can be matched with value in the forms. These regular expressions may have to be adjusted. If the new form adds new fields, new fields need to be added to signature and profile. But basically, if you do not add new fields to the form nor change the field name, you can just use the old smart profiles without any modifications.