| ||||
| ||||
|
Monday, October 24, 2011
Abhishek Verma invited you to Dropbox
Monday, September 19, 2011
Google Adsense Major Mistakes
Keep In Mind Ten Major Mistakes Before Creating Google Adsense Account:
Before create an adsense account realize and keep in your mind these below major mistakes.
-
Don’t click on your own ads on your computer system. Because 70% of the websites has been banned because of clicking their own ads. In Google’s terms it’s called ‘Invalid Clicks’.
-
You should find information regarding the black listing before creating new adsense account. It will make you further complicated to carry on in Google, certainly it will banned your account 100%.
-
One account is sufficient for several websites suppose, you have one hundred websites. Google has given the permission to place your ads on any website or blog.
-
Don’t use the convincing words that compel the visitors to click on them.
For example:
-
Click Here
-
Useful links
-
Click and Win
Suitable words are:
-
Advertisement.
-
Sponsored By.
5. Your website should be use Google recommended language. (Google Does Not Support Urdu language.)
6. You should provide your adsense JavaScript code to anyone through, E-mail Because Google have a profound observation on Emails?
7. You should not display adsense on a Popup window because Google rigorously disallow such activities.
8. Place your ads on such webpage which has content, data or information.
9. You should not locate your ads on such a page where you are asking and filling information from visitor such as:
-
Application Form
-
Registration Form
-
Login Page etc.
10. Stay away from using such kind of tools that clicks automatically on your ads. Google has deep observation on these tools.
For instance:
-
Auto Clicker
-
Click Sensor
Thursday, September 8, 2011
The Seven Basic Principles of the Context-Driven School
1.
The
value of any practice depends on its context.
Reasonable people can advocate for
standards-driven testing. Or for the idea that testing activities should be routinized to the extent that they can be delegated to less
expensive and less skilled people who apply the routine directions. Or for the
idea that the biggest return on investment today lies in improving those
testing practices intimately tied to writing the code. These are all widely
espoused views. However, even if their proponents emphasize the need to tailor
these views to the specific situation, these views reflect fundamentally
different starting points from context-driven testing.
Cem Kaner, J.D., Ph.D.
James Bach
2.
There
are good practices in context, but there are no best practices.
3.
People,
working together, are the most important part of any project's context.
4.
Projects
unfold over time in ways that are often not predictable.
5.
The
product is a solution. If the problem isn't solved, the product doesn't work.
6.
Good
software testing is a challenging intellectual process.
7.
Only
through judgment and skill, exercised cooperatively throughout the entire
project, are we able to do the right things at the right times to effectively
test our products.
Illustrations of the Principles in Action:
|
·
Testing
groups exist to provide testing-related services. They do not run the
development project; they serve the project.
|
|
·
Testing
is done on behalf of stakeholders in the service of developing, qualifying,
debugging, investigating, or selling a product. Entirely different testing
strategies could be appropriate for these different objectives.
|
|
·
It
is entirely proper for different test groups to have different missions. A
core practice in the service of one mission might be irrelevant or
counter-productive in the service of another.
|
|
·
Metrics
that are not valid are dangerous.
|
|
·
The
essential value of any test case lies in its ability to provide information
(i.e. to reduce uncertainty).
|
|
·
All
oracles are fallible. Even if the product appears to pass your test, it might
well have failed it in ways that you (or the automated test program) were not
monitoring.
|
|
·
Automated
testing is not automatic manual testing: it's nonsensical to talk about
automated tests as if they were automated human testing.
|
|
·
Different
types of defects will be revealed by different types of tests--tests should become
more challenging or should focus on different risks as the program becomes
more stable.
|
|
·
Test
artifacts are worthwhile to the degree that they satisfy their stakeholders'
relevant requirements.
|
An Example:
Consider two projects:
1.
One
is developing the control software for an airplane. What "correct
behavior" means is a highly technical and mathematical subject. FAA
regulations must be followed. Anything you do -- or don't do -- would be
evidence in a lawsuit 20 years from now. The development staff share an
engineering culture that values caution, precision, repeatability, and
double-checking everyone's work.
2.
Another
project is developing a word processor that is to be used over the web.
"Correct behavior" is whatever woos a vast and inarticulate audience
of Microsoft Word users over to your software. There are no regulatory
requirements that matter (other than those governing public stock offerings).
Time to market matters -- 20 months from now, it will all be over, for good or
ill. The development staff decidedly do not come from an engineering culture,
and attempts to talk in a way normal for the first culture will cause them to
refer to you as "damage to be routed around".
|
·
Testing
practices appropriate to the first project will fail in the second.
|
|
·
Practices
appropriate to the second project would be criminally negligent in the first.
|
Commentary
In the years since we first published
the description, above, some people have found our definition too complex and
have tried to simplify it, attempting to equate the approach with Agile
development or Agile testing, or with the exploratory style of software
testing. Here’s another crack at a definition:
Context-driven testers choose their testing objectives, techniques, and
deliverables (including test documentation) by looking first to the details of
the specific situation, including the desires of the stakeholders who
commissioned the testing. The essence of context-driven testing is
project-appropriate application of skill and judgment. The Context-Driven
School of testing places this approach to testing within a humanistic social
and ethical framework.
Ultimately, context-driven testing is about doing the best we can with
what we get. Rather than trying to apply “best
practices,” we accept that very different practices (even different definitions
of common
testing terms) will work best under different circumstances.
Contrasting context-driven with context-aware testing.
Many testers think of their approach as
context-driven because they take contextual factors into account as they do
their work. Here are a few examples that might illustrate the differences
between context-driven and context-aware:
- Context-driven testers reject the notion of best practices, because they present certain practices as appropriate independent of context. Of course it is widely accepted that any “best practice” might be inapplicable under some circumstances. However, when someone looks to best practices first and to project-specific factors second, that may be context-aware, but not context-driven.
- Similarly, some people create standards, like IEEE Standard 829 for test documentation, because they think that it is useful to have a standard to lay out what is generally the right thing to do. This is not unusual, nor disreputable, but it is not context-driven. Standard 829 starts with a vision of good documentation and encourages the tester to modify what is created based on the needs of the stakeholders. Context-driven testing starts with the requirements of the stakeholders and the practical constraints and opportunities of the project. To the context-driven tester, the standard provides implementation-level suggestions rather than prescriptions.
Contrasting context-driven with context-oblivious, context-specific, and context-imperial testing.
To say “context-driven” is to
distinguish our approach to testing from context-oblivious, context-specific,
or context-imperial approaches:
- Context-oblivious testing is done without a thought for the match between testing practices and testing problems. This is common among testers who are just learning the craft, or are merely copying what they’ve seen other testers do.
- Context-specific testing applies an approach that is optimized for a specific setting or problem, without room for adjustment in the event that the context changes. This is common in organizations with longstanding projects and teams, wherein the testers may not have worked in more than one organization. For example, one test group might develop expertise with military software, another group with games. In the specific situation, a context-specific tester and a context-driven tester might test their software in exactly the same way. However, the context-specific tester knows only how to work within her or his one development context (MilSpec) (or games), and s/he is not aware of the degree to which skilled testing will be different across contexts.
- Context-imperial testing insists on changing the project or the business in order to fit the testers’ own standardized concept of “best” or “professional” practice, instead of designing or adapting practices to fit the project. The context-imperial approach is common among consultants who know testing primarily from reading books, or whose practical experience was context-specific, or who are trying to appeal to a market that believes its approach to development is the one true way.
Contrasting context-driven with agile testing.
Agile development models advocate for a
customer-responsive, waste-minimizing, humanistic approach to software
development and so does context-driven testing. However, context-driven testing
is not inherently part of the Agile development movement.
- For example, Agile development generally advocates for extensive use of unit tests. Context-driven testers will modify how they test if they know that unit testing was done well. Many (probably most) context-driven testers will recommend unit testing as a way to make later system testing much more efficient. However, if the development team doesn’t create reusable test suites, the context-driven tester will suggest testing approaches that don’t expect or rely on successful unit tests.
- Similarly, Agile developers often recommend an evolutionary or spiral life cycle model with minimal documentation that is developed as needed. Many (perhaps most) context-driven testers would be particularly comfortable working within this life cycle, but it is no less context-driven to create extensively-documented tests within a waterfall project that creates big documentation up front.
Ultimately, context-driven testing is
about doing the best we can with what we get. There might not be such a thing
as Agile Testing (in the sense used by the agile development community) in the
absence of effective unit testing, but there can certainly be context-driven
testing.
Contrasting context-driven with standards-driven testing.
Some testers advocate favored
life-cycle models, favored organizational models, or favored artifacts.
Consider for example, the V-model, the mutually suspicious separation between
programming and testing groups, and the demand that all code delivered to
testers come with detailed specifications.
Context-driven testing has no room for
this advocacy. Testers get what they get, and skilled context-driven testers
must know how to cope with what comes their way. Of course, we can and should
explain tradeoffs to people, make it clear what makes us more efficient and
more effective, but ultimately, we see testing as a service to stakeholders who
make the broader project management decisions.
- Yes, of course, some demands are unreasonable and we should refuse them, such as demands that the tester falsify records, make false claims about the product or the testing, or work unreasonable hours. But this doesn’t mean that every stakeholder request is unreasonable, even some that we don’t like.
- And yes, of course, some demands are absurd because they call for the impossible, such as assessing conformance of a product with contractually-specified characteristics without access to the contract or its specifications. But this doesn’t mean that every stakeholder request that we don’t like is absurd, or impossible.
- And yes, of course, if our task is to assess conformance of the product with its specification, we need a specification. But that doesn’t mean we always need specifications or that it is always appropriate (or even usually appropriate) for us to insist on receiving them.
There are always constraints. Some of
them are practical, others ethical. But within those constraints, we start from
the project’s needs, not from our process preferences.
Context-driven techniques?
Context-driven testing is an approach,
not a technique. Our task is to do the best testing we can under the
circumstances–the more techniques we know, the more options we have available
when considering how to cope with a new situation.
The set of techniques–or better put,
the body of knowledge–that we need is not just a testing set. In this, we
follow in Jerry Weinberg’s
footsteps: Start to finish, we see a software development project as
a creative, complex human activity. To know how to serve the project well, we
have to understand the project, its stakeholders, and their interests. Many of our core
skills come from psychology, economics, ethnography, and the other socials
sciences.
Closing notes
James Bach
How to spot a tester in a...
Location:
Bengaluru, Karnataka, India
Agile Testing by Elisabeth Hendrickson
Elisabeth Hendrickson on Agile Testing from Google
Excellent talk. Elisabeth is one of the best speakers.
[GoogleTechTalks]
-------------------------------
Wednesday, September 7, 2011
Becoming an eXpert in Testing without wOrking hard and in 8 Simple Steps
The experts with whom you may interact in
forums and on blogs, paint a picture of an expert that makes you believe
you need hundreds of years of experience to actually become one. Trust
me; they are trying to fool you to help them retain their own status as
experts.
You see people like James Bach
talking about skills like cognition, lateral thinking, confusion as a
good thing, and other blah blah blah, making you think that a tester is a
superman who needs to test software at the Andromeda Galaxy within
microseconds before the galaxy is sucked by a black hole. Next on target
is the other guy, what’s his name? Ah, Michael Bolton,
who travels around the world teaching Rapid Testing pretending as
though it needs some mental martial arts practice to become a Rapid
Tester.
I have been their student and I can safely tell you that what they
teach doesn’t make you an expert tester. In many worst cases I have
witnessed, it has made their audience, student of testing craft forever.
The world could have had many experts today but experts like those
mentioned above have ensured that only they retain the status.
Who wants to be a student of the testing craft when there is an
option to become an expert? I went to those guys wanting to be an expert
and they converted me to a student of the craft. Guess they were afraid
of my ability to overrule them as an established expert in this field. Luckily, the most important thing about their training was to use
brains, question and test. Use lateral thinking skills and read books
like Blink and study general systems thinking. I used the skills I
gained from it and escaped from being a student. I am glad to announce
to the world through this blog post that I am an established expert.
It’s been years since I talked to them and I feel happy about it.
So, what’s my expertise?
I am an expert who introduced the Black Viper Testing Technique &
Selphar Box of techniques for testers to this world. Needless to say
that without the BVTT & Selphar Box of Techniques (short form:
SelBox Testing) testers all across the globe would have not found many
bugs.
My current area of research is Rhino Hunt Testing. When I shared the
area of research on twitter, some experts got jealous of me and tried
misguiding me asking if I was researching on One Horn Rhino or Two? Then
another expert chipped in to misguide me further by asking if the One
Horned Rhino was male or female?
For the context of this article, my new expertise is to help people
become experts without having to work hard. Unlike James or Michael, you
are in safe hands.
Pre-requisite
- You must have worked as a tester for a couple of years with some big companies like Microsoft, Google, IBM, Infosys, Wipro, CTS (whatever)
- You must have a blog
- You must be on an interview panel for your organization or you interview testers
- You could also be a testing coach or trainer.
Step 1:
Once you have that…
Think about an animal or a bird type which is not yet used in
testing, be it White Mamba, Giraffe, Elephant, Blackbuck, Spoon bill,
Parakeet, Dolphin…
If you want to be more imaginative, you may want to think of insects
or reptile families like Spider, Tarantula, Gnat, House Fly, Mosquito –
Dengue type, Mosquito – Chikun Gunya type…
Note: Monkey, Guerilla, Snake and Rhino are already in use and
introduced by other experts. Don’t copy or if you want to, please owe
them necessary credits.
Step 2
Once you fix upon an animal, bird or an insect in mind start to think
about the connection between them and testing and form a new technique.
Suggestion / Tip based on experience: It is at this moment, you must start making notes.
For example:
If you are going to think about spider, you can think of a technique
where testers behave like a spider, first weaving the web (tests) and
then waiting for the bugs to be caught on it, while staying at the
centre. Once in a while when there are enough bugs to report, the tester
moves from the centre and captures those bugs. If the web is destroyed,
move on to make another web.
Note: Don’t use the above published example. Someone may google and find out that you are a fake expert.
Step 3
Write a lengthy explanation of your technique and
use words and terms that confuses the reader. For example use words
like: Neil Bhors effect, indemnification against ramification, trapezium
syndrome, Wurtz Fittigs reaction… that are not often used and even if
Googled, people can’t understand what it means.
Experience based tip: If you are married, ask your spouse to read
it, and if you hear, “Honey, this is awesome”, you are publishing
ready.
Step 4
Publish it on your blog
Most important note: You shouldn’t do the marketing for your blog post.
Step 5
Ask all those testers whom you interview if they know the technique
you published in your blog post and reject them if they didn’t. Do this
over a period of six months to at least about 100 testers.
Now what those 100 testers will do is to first go Google your
technique and try understanding your blog post. As you have obfuscated
it, no one would get it, so they would ask experienced testers and
experts in forums and groups that claim to discuss testing. The ego of
experienced testers and so called experts wouldn’t let them say, “I
don’t know this” but instead, they would offer their own explanations to
it.
Step 6
Apply to testing jobs and attend interviews. If the interviewer is
asking you to explain your own animal / insect / bird technique to you,
tell to yourself, “Congratulations!”
Step 7
Quit your job and start writing to conference program chairs telling
them you would be willing to do a half day or a full day tutorial on
this famous technique. Say it was the “Snake in the Eagle’s shadow
technique” you introduced, you could do a one day tutorial and charge as
much as what ISTQB training costs.
Some conferences will give you a chance to keynote and from there you are a hero.
Step 8
Consider publishing a book with your technique. Hang out with other
bloggers at conferences, buying them beer and tweet saying, “I am
meeting @this_tester and he is so cool” or “This guy is one hell of a
tester”. They would be so pleased that they would go back and write blog
posts on your keynote and technique.
That’s all. No rocket science. By the way, this actually works. Have
you been interviewed and been asked about the Monkey, Guerilla, Rhino,
Snake, Yellow, Blue, White, Black?
Oops, I left my one horned male mutated rhinocerous testing technique research midway. I am speaking at CAST 2011 and hope to catch you all there. Apparently, James was the Conference chair and he didn’t give me the keynote.
About the author
Pradeep is an awarded thought leader, renowned author, invited writer and speaker around the world.
Pradeep is the co-founding Director at Moolya Software Testing Private Limited
which aims to be the most preferred testing vendor of the world.
Pradeep’s consulting stories, test reports and experience reports have
fascinated many people across the world. He has consulted for product
startups, small to medium size software organizations, and multi billion
dollar, euro and pound organizations, too. Pradeep's Tester Tested!
blog is one of the widely influential and read blogs in the industry and his blog posts in Moolya’s blog is catching up to speed.
Labels:
Agile Testing,
Cartoon,
Funny,
Image,
Testing
Location:
Bengaluru, Karnataka, India
Tuesday, September 6, 2011
A Brief JUnit tutorial
This is a brief video on how to use the JUnit open source unit testing
framework for Java. By using JUnit, you can assert that methods in your
Java code work as designed, without the need to set up the complete
application.
Web Service Testing with soapUI
For a few years now I have used the open source application soapUI to simplify Web Service testing. Both to test services that I have written and to test external services that I have had to consume. In this post I'll cover the basic types of testing you can do with soapUI and provide some practical tips on how to use soapUI when working with Web Services. If you don't want to go through the detailed examples I suggest jumping straight to the Practical Tips section at the end.
Getting Started
After downloading and installing soapUI the easiest way to get started is to create a new project from an initial WSDL or WADL. For demonstration purposes I'll use the free Weather Web Service at http://www.webservicex.net/globalweather.asmx. We will create a test for each operation in this SOAP Web Service. We will also create a Test Suite, that allows us to run all our tests at the click of a button. Furthermore, we will create a Load Test for our Test Suite and a Mock Service to simulate the functionality of the Web Service.
To do this go to File and select New soapUI Project. Populate the New soapUI Project screen in the following manner and click OK:
Basically, paste the URL to the web service WSDL file into the Initial WSDL/WADL field and additionally check the field to generate a MockService. SoapUI will now load the Web Service definition and ask you questions about how to create the MockService:
For this demonstration change the path to "/WeatherMock" and check the Starts the MockService immediately checkbox, but otherwise accept the defaults. After clicking OK, specify the name of the Mock Service as "Weather MockService" (or a name of your choice) and click OK again.
This will complete generating artifacts for the SOAP 1.2 version of the GlobalWeather Web Service.
Next you will be asked the exact same questions, for the SOAP 1.1 version. Since we don't plan to use SOAP 1.1 you can just hit Cancel. (I haven't found a way to configure soapUI to only generate artifacts for SOAP 1.2. If you know how to, please let me know! :)
Running Tests
To execute a given test, drill down to the requests that soapUI auto-generated and insert values that make sense for the given Web Service operation. In our case, in the Navigator on the left, click on GlobalWeatherSoap12, then GetCitiesByCountry and then double-click on Request 1.
We'll set the Country name as Iceland and then hit the green arrow button to execute the test.
Voila, you should get results back from the Web Service, a list of Icelandic cities. To check if the Web Service response is valid (conforms to the WSDL), right-click in the results window and click Validate.
Lets give this test the name "City Test". (Right-click Request 1 and select rename)
Then do a similar test for the GetWeather operation. Click on GetWeather and then double-click on Request 1. Put in "Reykjavik" for CityName and "Iceland" for CountryName and run the test. Also rename the test to "Weather Test". After running the test, the results should look something like this:
Build a TestSuite
Now that we have created two tests, lets add them to a TestSuite so we can easily re-run them at any time. In the Navigator on the left, right-click GlobalWeatherSoap12 and select Generate TestSuite. Select Use existing Requests in interface, and check Generates a default LoadTest for each created TestCase and Single TestCase with one Request for each Operation:
After clicking OK give the TestSuite the name "Weather TestSuite". Double-click on GlobalWeatherSoap12 TestSuite under Weather TestSuite to show the TestCase editor.
Then click the green arrow button to run the TestSuite. If all goes well you should be presented with a results-screen like this, indicating a successful test run:
If the TestSuite run fails you'll see FAILED at the top instead of FINISHED and you should get a message explaining why a given test failed.
Add Assertions
To make the tests more meaningful lets add some assertions to validate the responses from the Web Service we are calling. You do this by opening up the test Request Editor (double-click on a given test step under TestSuite in the Navigator) and then click the plus-sign next to the green arrow button (second from the left).
For both tests lets add the assertion called SOAP Response, to ensure the Web Service is returning a valid SOAP response. Then add the assertion called Response SLA and specify the response time as 2000 ms. That basically means that we are going to consider the test a failure if we don't get a response within two seconds. Lastly, lets add some content validation by selecting a Contains validation. For the GetCitiesByCountry operation add the string "Iceland" as the content to expect in the response, and for the GetWeather operation add the string "Success".
Then run the TestSuite again to make sure you get success-results.
Run a Load Test
When we created the TestSuite in last step, we told soapUI to generate a Load Test as well. You'll find it under the TestSuite in the Navigator on the left, under the heading Load Test. The default name is LoadTest 1. Double click on it in the Navigator to open it up. Before running the LoadTest you can tweak such parameters as number of concurrent threads to run, length of the test-run, and delay between tests. Once you have made the desired configurations hit the green arrow button to run the Load Test:
In this sample, 5 concurrent threads are running the TestSuite for 60 seconds with a random wait of up to 1 second between the start of each test.
You can track the progress of the load test with the progress bar in the upper right corner. If it reaches a 100% without reporting any test errors you are good to go.
Use the Mock Service
Back when we imported the Weather Web Service we told soapUI to generate and start a Mock Service. That service can now be accessed at http://localhost:8088/WeatherMock. This is convenient for example if you are developing against a Web Service that has been designed (WSDL/WADL available) but not yet implemented. Then you can have the Mock return an actual Web Service response to test your code even though the actual implementation hasn't been completed. A default response has already been generated (under WeatherMock Service, GetCitiesByCountry, and Response 1), which you can edit as you like.
You can also have the Mock service return different responses depending on which request it receives. To demonstrate this, lets create two new MockResponses for the GetWeather operation:
- Click on GetWeather under the Weather MockSerive in the Navigator and select New MockResponse.
- Give it the name "ReykjavikWeatherResponse". Accept the automatically generated response, but put the value "Reykjavik" in the GetWeatherResult tag. (Or even better copy the actual response from calling GetWeather for Reykjavik, which should give you a fully valid response).
- Create another response called AkureyriWeatherResponse and put the text "Akureyri" in the GetWeatherResult tag.
Now put logic in the Mock service for when to return each response:
- Double-click on GetWeather in the Navigator to show the MockOperation Editor.
- Select ReykjavikWeatherResponse under MockResponses.
- Select QUERY_MATCH under Dispatch.
- Click the plus sign to add a new match.
- Give it the name "Reykjavik".
- Select Reykjavik and then populate the XPath value with:
declare namespace web='http://www.webserviceX.NET';
declare namespace soap='http://www.w3.org/2003/05/soap-envelope';
/soap:Envelope/soap:Body/web:GetWeather/web:CityName
This XPath query will grab the value from the CityName tag.
- Under Expected Value enter "Reykjavik".
- Under Dispatch to, select ReykjavikWeatherResponse.
- Repeat the same steps to create a Match that returns AkureyriWeatherResponse when the city name in the request is Akureyri.
Now you can test your mock Match-logic by opening up your GetWeather test and adding http://localhost:8088/WeatherMock as the endpoint to use (select the current endpoint in the dropdown and pick add new endpoint...). Then run the test and play around with changing the city name in the request to get different responses from the Mock service.
Additionally, if you want to test your client-side error handling you can have soapUI generate a soap:Fault response and have your Mock return it. You do that by creating a MockResponse and then clicking the apostrophe icon in the MockResponse Editor. Then edit the auto generated response as appropriate.
Practical Tips: What to use soapUI for
Now that we have covered the basics of soapUI, here are some practical tips for putting it to use during your software development.
Test Web Services You Have to Consume
When consuming external services, before delving into code, use soapUI to "kick the tires" of the Web Service. This especially applies when consuming newly written services. Rather than potentially spending hours pulling your hair over why your client code isn't working, spend a few minutes with soapUI validating and getting familiar with the Web Service you are about to consume. In particular:
- Create and run simple tests for key Web Service operations
- Make sure there are no security/access problems
- Is the web service using some proprietary authentication protocol (NTLMv2 comes to mind) that might give you trouble during implementation?
- Have soapUI validate that responses conform to the Web Service contract (WSDL/WADL)
- Visually inspect responses
- Do they make sense or are they some illegible auto generated garble that should really be cleaned up and restructured by the Web Service developer?
- Do the responses meet your needs?
- Test a few boundary cases
- Does the Web Service implement proper error handling? Or does it blow up with an HTTP 500 error or some non SOAP compliant text message? Does the level of error reporting meet your needs?
- Add all your tests to a TestSuite. That way you can quickly "ping" the Web Service to make sure everything is working on the other end. When a problem arises, taking your code out of the loop is a good way to make sure the issue is on the remote end and not with your own code.
When developing against a newly written external Web Service, it is very rare that the Web Service works 100% out of the box as expected. There is usually a fair amount of communication needed between the Web Service developer and the client-side developer to tweak things until the Web Service works as needed. By using soapUI, you can inspect the Web Service right at the time it is delivered to you, and quickly spot things that may need to be fixed. I usually take 5 or 10 minutes to do so and almost always have a list of things that need to be modified. The response time for getting those changes implemented is usually very short, as the Web Service developer is still engaged in the project and things fresh in his mind. If I don't get back to him/her until some weeks later when I finally get around to implementing my client-side code, the other developer has probably moved onto other things and/or forgotten why he implemented the service in a certain way.
Lastly, if you have received a WSDL/WADL file, but the service hasn't actually been implemented, and you NEED to start implementation against the service (not ideal), then consider using soapUI to create a Mock service from the WSDL/WADL file. That way you can have your code hit the Mock service and at least get some preliminary feedback on whether your client code is working. Since creating a Mock service is really a breeze with soapUI it can sometimes be more practical than implementing Mock objects in your code.
Test Your Own Web Services
When writing a Web Service for others to consume it can be handy to have a soapUI TestSuite to sanity test your service. Of course you should still write unit and integration tests for your code, but having a good soapUI TestSuite can be quick and easy way to find out if all your services are running as expected. When you get that 4 AM phone call saying that something is broke, fire up soapUI and at the click of a button sanity test all of your Web Service operations. If you are smart, you'll hand the TestSuite over to a support team so that you only get woken when the issue truly is on your end ;-) Just make sure to add proper assertions for Web Service responses and include SLA assertions to test that things are not running dead slow.
If you are concerned about the performance of your Web Service or whether it can handle a given load, then a soapUI Load Test can be a convenient way to test that. Set the number of threads to imitate the expected number of concurrent users for your service and add SLA assertions to make sure all requests are handled in a timely fashion. Of course generating all the load from a single machine does not quite imitate real traffic, so for truer numbers consider having coworkers assist you in running simultaneous Load Tests from multiple machines.
You Can Download the older versions of 'SoapUI' from here
You Can Download the older versions of 'SoapUI' from here
Labels:
Load Test,
MockService,
SoapUI,
Testing,
WebServices
Location:
Bengaluru, Karnataka, India
Monday, September 5, 2011
Testing becoming the fastest-growing niche within the IT space
Joe A Scaria, ET Bureau Aug 17, 2011, 11.21pm IST
For long the poor cousin of software development, the testing function is forcing its way into the limelight, say software companies. And that trend happens to coincide with testing becoming the fastest-growing niche within the IT space.
Technology company officials say that the biggest difference in recent times is a surge in interest among youngsters to choose testing as a career, as against companies having to push a few staffers into the testing function out of necessity.
"The turn of events leading to an increased interest in testing has been quite dramatic", says Ranga Reddy, CEO of Maveric Systems, an independent software testing major based here. "Even up to the year 2000, testing was almost like an after-thought, and having no specific budgets".
Sumithra Gomatam, senior VP and global head of testing practice at Cognizant, says there has been a significant growth in the testing function over the past five years. "We are very committed to growing this business", says Gomatam, and Cognizant has seen its employees in the testing function grow from 4,000 at the end of 2004 to more than 17,500 now.
Cognizant is also reaching out to engineering college students, providing them awareness about a career in testing by getting experienced hands to interact with the students. Within the company, testing has turned one of the fastest-growing practices.
Krishna Prasad, general manager of UST Global says "Many customers are looking for vendors to provide independent verification and validation (IV&V) services which are separate from the development process. This has led to a surge in demand for QA and testing services and fuelled the growth in testing-focused jobs. As a result, engineers with functional, technical or performance expertise are seeing QA and testing as a viable career path."
Maveric's Ranga Reddy says the software testing industry is growing at 20%, making it the fastest growing niche in the IT space and that the near-term prospects look good because the testing vertical is becoming more mature and an increasing share of testing work is being outsourced by companies in the West.
Reddy says traditionally, 80% of software development work was being outsourced, as against only about 30% of the testing work. "With an increased need to effect cost savings, a larger share of software testing work is also being outsourced", says he.
A recent Nasscom report on the software testing market says the global testing market was worth $30 billion in 2010, and that India's share of it was $3.2 billion. According to the report, export revenues and the number of employees in the software testing industry have doubled over the past four years.
For long the poor cousin of software development, the testing function is forcing its way into the limelight, say software companies. And that trend happens to coincide with testing becoming the fastest-growing niche within the IT space.
Technology company officials say that the biggest difference in recent times is a surge in interest among youngsters to choose testing as a career, as against companies having to push a few staffers into the testing function out of necessity.
"The turn of events leading to an increased interest in testing has been quite dramatic", says Ranga Reddy, CEO of Maveric Systems, an independent software testing major based here. "Even up to the year 2000, testing was almost like an after-thought, and having no specific budgets".
Sumithra Gomatam, senior VP and global head of testing practice at Cognizant, says there has been a significant growth in the testing function over the past five years. "We are very committed to growing this business", says Gomatam, and Cognizant has seen its employees in the testing function grow from 4,000 at the end of 2004 to more than 17,500 now.
Cognizant is also reaching out to engineering college students, providing them awareness about a career in testing by getting experienced hands to interact with the students. Within the company, testing has turned one of the fastest-growing practices.
Krishna Prasad, general manager of UST Global says "Many customers are looking for vendors to provide independent verification and validation (IV&V) services which are separate from the development process. This has led to a surge in demand for QA and testing services and fuelled the growth in testing-focused jobs. As a result, engineers with functional, technical or performance expertise are seeing QA and testing as a viable career path."
Maveric's Ranga Reddy says the software testing industry is growing at 20%, making it the fastest growing niche in the IT space and that the near-term prospects look good because the testing vertical is becoming more mature and an increasing share of testing work is being outsourced by companies in the West.
Reddy says traditionally, 80% of software development work was being outsourced, as against only about 30% of the testing work. "With an increased need to effect cost savings, a larger share of software testing work is also being outsourced", says he.
A recent Nasscom report on the software testing market says the global testing market was worth $30 billion in 2010, and that India's share of it was $3.2 billion. According to the report, export revenues and the number of employees in the software testing industry have doubled over the past four years.
Labels:
Nasscom,
News,
Testing,
UST Global
Location:
Chennai, Tamil Nadu, India
Steve Jobs’ Advice for Software Testers
Actually, in this 2005 commencement speech for Stanford University, Steve Jobs offers timeless advice for people in all professions. But seeing how this is a software testing blog – and seeing how Jobs has recently stepped down as Apple’s CEO – it seemed fitting to post these words of wisdom with our testing audience in mind.
My favorite quote from this speech:
“The only way to do great work, is to love the work that you do.”
Happy testing!
My favorite quote from this speech:
“The only way to do great work, is to love the work that you do.”
Happy testing!
Subscribe to:
Posts (Atom)








