Ruining your Test Automation Strategy. 156

Posted by Uncle Bob Tue, 29 Sep 2009 20:42:00 GMT

Everybody wants a test automation strategy nowadays. The reason is clear. It take a lot of effort to run a suite of manual tests; and that effort has be be repeated several times per year.

Consider the fate of this poor customer of mine. The picture you see here is simply the Table of Contents of his manual test plan. That plan has tens of thousands of individual manual tests. It costs them millions of dollars to execute, and they must execute it many times each year.

To make matters worse, in these difficult times, management has told the QA manager that he must cut 50% from his manual testing budget. The question he asked me was: “Which 40,000 of these 80,000 tests should I delete?”

So, as you can probably imagine, this poor guy really wished his tests were automated. Runnning automated tests does not cost six figures several times a year. Running automated tests does not need to be cut in half when budgets get tight. Running automated tests are the way to go.

One common strategy to get your tests automated is to outsource the problem. You hire some team of test writers to transform your manual tests into automated tests using some automation tool. These folks execute the manual test plan while setting up the automation tool to record their actions. Then the tool can simply play the actions back for each new release of the system; and make sure the screens don’t change.

Sounds great doesn’t it? Sounds like just the ticket! Sounds like a simple way to convert manual tests into automated tests!

Yeah, and it’s a sure fire way to make sure you utterly ruin your strategy for test automation!...

Why is this so runious?

Automatically testing a system through the GUI couples the tests to the GUI. That’s right, this is a coupling problem! A standard, every-day, good ol’ software design coupling problem. And the problem with coupling is that when two things are coupled, and you change one of them, the other one breaks.

In the case of automated tests, if you change the GUI, the automated tests break. This was a big enough problem when the test were manual. You always had to go back and edit the test plans to take GUI changes into account. Fortunately, since the test were manual, you had human beings in the loop, and you could expect them to use common sense about simple GUI changes. The fact that what they saw on the screen differed from what they test plan said they should see would not confound them so long as they understood how the GUI had changed.

But an automated tool doesn’t have that kind of reasoning power. If the automated tool sees anything different from what it expects, it simply fails.

Now, clearly, automated tools can be made to be clever enough to avoid simple cosmetic issues like the moving of a button, or a change in the spelling of a menu. But you have to work at making the tests tolerant of such changes. Do you think that outsourced team of test writers care much about that?

In any case, no tool can deal with changes to the navigation structure, or gross changes to the structure of screens. Thus, there will always be a class of GUI changes that will cause huge swaths of automated tests to fail. Unfortunately these kinds of changes are all too common. What’s more the cost of re-recording the tests is high, and the re-recording process itself is error-prone.

The net result is that GUI driven automated tests are fragile, and the process of maintaining them is expensive and unreliable.

To drive this point home, consider the fate of an old client of mine who had tens of thousands of automated tests driven through the GUI. Every time anyone changed the GUI a thousand or so tests broke. The burden of maintaining those tests was so great that this customer added one restrictive policy after another in an effort to prevent changes to the GUI. In the end, GUI changes became officially prohibited. (This was a DOS GUI in the era of Windows!)

Or consider another client who spent a great deal of time and effort creating automated tests through the GUI. This client could not constrain the GUI against change, so had to live with the burden of re-recording the tests. But the burden was too great. Trade-offs were made. Many of the tests de-prioritized, and therefore lost. Bit by bit this customer lost his investment in automated tests.

The bottom line is that automated tests through the GUI are inherently unstable, and will drive you to one or the other of those two undesirable states.

It is hopeless?

Not at all. First of all, you need some acceptance tests that go through the GUI. I think that number is on the order of 5%. These are integration tests that make sure that the whole system is wired up correctly.

You also need to test the GUI through the GUI, and this might be another 5-10% of the total body of tests. What does it mean to test the GUI? It means that you aren’t testing any business rules! You test the GUI and only the GUI. My favorite scheme for doing this is to mock out all the business rule code entirely, replacing it with a dummy that simply provides canned answers to all the GUI interfaces. Imagine, for example, replacing all the servlets in a web system with dummy servlets that pay no attention to their inputs, use no database at all, and simply return canned HTML.

By the same token, the business rule tests should not use the GUI. In fact, the GUI shouldn’t even be turned on. Rather, your tests should invoke the same business rule APIs that the GUI invokes. Indeed, the tests become an alternative UI.

Preferably the Business Rule API is well below the GUI layer. In a web system it should be below the servlet layer. In the best designed systems, it can even be outside the container.

Tools like FitNesse, Cucumber, RobotFX, and GreenPepper are designed for just this kind of API testing.

Tests that drive the system through the API are entirely decoupled from the GUI. When the GUI changes, these tests are completely unaffected. There is no huge burden of test maintenance, and you are not at risk for losing your tests or constraining the GUI.

Summary

Automated testing through the GUI is intuitive, seductive, and almost always wrong! A dedicated program of automatically testing your system through the GUI is almost certain to fail. If you want a robust test automation strategy, plan to use a healthy dose of API testing, and as little GUI testing as possible.

Comments

Leave a response

  1. Avatar
    jorgemon007@hotmail.com 17 minutes later:

    Very interesting, thanks for the info…....

  2. Avatar
    Curtis Cooley 36 minutes later:

    Not that I disagree with you, but what about designing your GUI tests with the same care with which you design your code. When you go to get a certain screen for testing, you go through, say, a factory. All your GUI test code interfacing is done through a set of factories, so when the GUI changes, a thousand tests break, but you change one class and a thousand tests now pass.

    Test code must be as well designed as your production code. Just as much care and time and effort and budget should be put towards testing. Otherwise you are putting yourself in a mode where you’re always chasing the rabbit but will never catch it.

  3. Avatar
    Ben Rady 39 minutes later:

    In addition to pure GUI tests, the number of system integration tests need to be kept to an absolute minimum. Even if you don’t use record and playback, these kinds of tests will be brittle (and slow). Faster, yes, than manual testing…but still so slow that you wont run them very often.

    Effective unit testing is step one in any test automation strategy.

  4. Avatar
    James Carr about 2 hours later:

    In my opinion GUI tests can hardly be worth their time to construct because of a low ROI. Even with the business layer faked out they can still be pretty fragile, and if you’ve made the dire mistake of running them in CI you can expect CI to be red several times per week even though the code base is 100% defect free and super clean.

    I like to view automated GUI tests as not tests, but automated demos. In the long run they don’t provide as much value as the tests at the business layers.

    I’d also like to mention JBehave and Concordion to the list of story level specification frameworks that can be used to describe business logic. I’ve really liked Concordion, but it always seems to get snubbed when story specification frameworks are mentioned. ;)

  5. Avatar
    Philip Schwarz about 2 hours later:

    About acceptance tests that drive the system through the API rather than through the GUI: in Test-Driven – Practical TDD and Acceptance TDD for Java Developers, Lasse Koskela says that these tests crawl under the system’s skin (the UI), so he calls their usage ‘crawling under the skin’, or ‘skinning the application’.

    On a project that uses the Acceptance TDD (ATDD) cycle

      1. Pick a Story
      2. Write Acceptance Tests
      3. Automate Tests
      4. Implement Functionality
      5. GOTO 1.
    

    acceptance tests that skin the application are important because they are often up to an order of magnitude faster than tests that don’t bypass the UI. As Lasse says in his book:

    The speed of test execution is not something we can dismiss. While implementing a user story, we want to be able to run the associated acceptance tests quickly and easily, again and again until they pass. Preferably, we’ll also run the full suite of acceptance tests before moving on to other tasks. Every second counts, because larger projects can easily have hundreds or thousands of acceptance tests.

    Not being able to run the full test suite means we’re forced to make a trade-off between the certainty of the overall system correctness and the pace of development
    More Tests                                        Fewer Tests
    <============================================================>
    Certainty and confidence                         Fast feedback
    
  6. Avatar
    Anthony Williams about 10 hours later:

    Running tests beneath the GUI requires investment in the application code to make this happen. For new applications you can make this investment off the bat. For legacy code, the chances are that the application has not been designed this way.

    For legacy applications, I think it is a worthwhile investment to replace manual rote testing with automated tests through the GUI, even though such tests are brittle. You just have to be aware that they are brittle, and when you change the GUI then you change the infrastructure to make it easier to test the logic beneath the GUI and the GUI itself separately. If you keep up with this continual investment then the automated tests will become less brittle over time.

  7. Avatar
    Markus Maier about 12 hours later:

    Anthony, wouldn’t it be better to invest all this effort in improving your code base to enable ‘skinning the application’, instead of building elaborate crutches to make GUI tests less brittle? This would not only result in faster tests but also in cleaner, more well-designed production code.

  8. Avatar
    Andreas Simon about 16 hours later:

    I definitely agree with your opinion, Bob. I think one has to distinguish precisely between acceptance tests (which are for your customer) and developer tests (which help your programmers tracking bugs down to their root cause). I want to add a source, that persuaded me deeply about this necessary difference and how one should cope with the consequences. J. B. Rainsberger spoke about it at Agile 2009. One can watch the video at http://www.infoq.com/presentations/integration-tests-scam. Very insightful for me.

  9. Avatar
    Uncle Bob about 17 hours later:

    Curtis Cooley 36 minutes later:
    Not that I disagree with you, but what about designing your GUI tests with the same care with which you design your code.

    Absolutely! Systems that are designed to be tested are much much easier to test. This makes it much easier to write both API tests, and GUI tests, and reduces the coupling problem.

    I think you’ll find, however, that the more you design your systems to be testable, the more you will naturally concentrate on API tests as opposed to GUI tests. This is because it is far easier to understand API tests in a well decoupled system. Indeed, in a truly decoupled system most GUI tests seem absurd. When you’ve got a nicely isolated component with a clear and focussed interface why would you test it through some arcane GUI?

  10. Avatar
    Anthony Williams about 17 hours later:

    If you follow my suggestions, that’s essentially what you get.

    Step 0: Manual rote testing through GUI Step 1: Automated rote testing through GUI Step 2a: Modify feature X which impacts GUI Step 2b: Ensure GUI for feature X cleanly separated from backend (i.e. allow skinning for feature X) Step 2c: Automated rote testing of everything but feature X through GUI Step 2d: Automated rote testing of GUI for feature X independent of logic Step 2e: Automated rote testing of feature X without GUI Step 3: Repeat for feature Y

    Eventually your application is entirely skinnable, apart from those features you haven’t touched the GUI for, and in the mean time the automated tests through the GUI provide a safety net when refactoring the app to allow such skinning. You can of course opt to make the remaining features skinnable too, but you don’t have to.

    Typically, manual rote testing is too expensive and time consuming for it to provide the necessary safety net for refactoring a non-skinnable app into a skinnable one.

  11. Avatar
    Curtis Cooley about 18 hours later:

    Uncle Bob about 17 hours later: I think you’ll find, however, that the more you design your systems to be testable, the more you will naturally concentrate on API tests as opposed to GUI tests. This is because it is far easier to understand API tests in a well decoupled system. Indeed, in a truly decoupled system most GUI tests seem absurd. When you’ve got a nicely isolated component with a clear and focussed interface why would you test it through some arcane GUI?

    I absolutely agree, but I’ve been bitten by fragile tests, and it seems that fragility is the number one concern with automated testing in general. We have ways of limiting fragility in production code, but I’ve not seen anyone specifically suggest that we use the same techniques, patterns and idioms we use to limit fragility in production code to limit the fragility in test code. So I said it ;)

  12. Avatar
    Harold about 23 hours later:

    10% of tests will not be enough to test all the functions that your users will be using, so are you basically recommending to ship software that hasn’t been tested?

    This is shocking.

    Every single functionality that users will be using needs to have at least one automated test, and if this functionality happens to be driven by a GUI, then you should be testing the GUI.

    I don’t understand why GUI’s should be getting a waiver when it comes to automated testing, and I don’t understand why GUI tests are inherently less stable than other kinds of tests. This makes no sense to me.

  13. Avatar
    Anthony Bailey 1 day later:

    About five years ago I worked on a well-tested application that was mostly driven through a direct manipulation user interface; a substantial part of the value of the application was in the way that the direct manipulation of rendered objects meshed tightly to the underlying domain. (It was a 3D medical visualization app; think of it as PhotoShop with lots of meaning to the pictures.)

    We tested in a wide variety of ways. My house of testing has many rooms and I would keep some of every flavor of test, but the tests that proved to have the most value were, oh guess what, those that tested the app just beneath the skin, hooking into careful abstractions of input events and representations of graphics on the screen.

    Of course testing GUI code can be worthwhile. But I would not test the domain logic through the GUI, nor test the GUI through its results on the domain. I advocate letting the tests get under your skin and crafting a layer primarily for testing purposes. (And being only slightly surprised when in the usual TDDesign fashion that code turns out to have other production clients too, such as the contextual help system, macro recording, etc.)

  14. Avatar
    Uncle Bob 1 day later:

    Harold about 23 hours later:
    10% of tests will not be enough to test all the functions that your users will be using, so are you basically recommending to ship software that hasn’t been tested?

    No. I’m suggesting you test 5%-10% through the GUI. Test 100% through APIs. Test 100% again with unit tests.

  15. Avatar
    Ian4101 1 day later:

    @Harold, That’s not quite what Bob is suggesting by any means. I think you are suggesting a black box approach to the problem and in practice a slightly transparent box approach is warranted. Bob hasn’t accounted for the other 85-90% – which is ok, that’s not the point of the article. I am curious whether there are metrics for business logic tests and persistence logic tests; tests on the db schema for example.

  16. Avatar
    Harold 1 day later:

    Unit tests can pass and yet your product can still have functional bugs. Not having functional tests for 100% of your functionalities still sounds like a bad idea.

    And I still don’t understand why automated tests through the GUI are wrong, you’re not giving much evidence for this point (and as a matter of fact, the company I’m working for is doing fine with 100% of our UI extensively tested every night).

  17. Avatar
    Maria Marcano 1 day later:

    Very interesting topic, I have the following questions:

    About this statement “Indeed, in a truly decoupled system most GUI tests seem absurd.” I understand that we can guarantee that components work well isolated but do you think we can guarantee that all pieces are working well together without having a similar coupling issue?. How would you test integration?. Many code I’ve seen are too coupled to have replaceable pieces to use during tests, how can we live with that?.

    Does this makes sense to you?

    • Have a test collection (classes and methods) that states how the application must work in a High level (how major business process should work, like stating the requirements)

    ? Major requirements may use more detailed pieces of the applications. For example, the specific GUI being used will be injected to the test collection that runs and verify different business processes (Test Collection doesn’t know about the details of the GUI)

    • Regarding to the GUI it is expressed in objects and provide services to the users (if a particular part of the UI changes, we make the change in only one specific place)

    I am going to begin doing more research about the last point (hopefully start blogging about this idea I have), and I am interested in having your opinion.

    Thanks,

  18. Avatar
    Fredrik Bertilsson 1 day later:

    Most shops I have been working for have a ratio of 1/4 to 1/2 between (manual) testers and programmers. One tester tested the code for two to four programmers. When writing unit tests my experience is that the time for writing (or modifying) test cases are about the same time, or more, as writing the code itself. And you would still need manual testers for stuff like GUI etc, that unit tests cant handle.

    Accordning these metrics you would for example need 4+2 members in the manual case compared to 8+ members in the automatic case. If unit tests should save any time, the metrics must be much different from mine, or? Regarding the statement that testing the GUI is only 5-10% of the total testing time, I could only be true for software that lacks any substantial GUI. In normal enterprise application, I could not imagine that the GUI part of the application is so small.

  19. Avatar
    Marc 1 day later:

    Harold:

    > Unit tests can pass and yet your product can still have functional bugs.

    So what? It sounds like you just discovered a truth known for thousands of years, “To err is human.”

    > Not having functional tests for 100% of your functionalities still sounds like a bad idea.

    Where did you get the idea that anyone here is advocating not testing 100% of your functionallity? All Uncle Bob has said is that out of the totality of your automated tests (that is, your unit tests, acceptance tests, gui tests, etc) roughly 10-15% should hit the gui. The other 85-90% covers the non-gui functionallity.

    > And I still don’t understand why automated tests through the GUI are wrong, you’re not giving much evidence for this point (and as a matter of fact, the company I’m working for is doing fine with 100% of our UI extensively tested every night).

    Um, you are commenting in a post encouraging testing the gui; where do you get the idea that anyone things it is “wrong” to do so? All Uncle Bob points out is that there is a cost to doing so, and offers some recomendations to help make it easier and more effective.

  20. Avatar
    Esko Luontola 1 day later:

    Fredrik Bertilsson: When writing unit tests my experience is that the time for writing (or modifying) test cases are about the same time, or more, as writing the code itself.

    My experience is that writing a test and a code to pass the test, takes almost the same time as thinking about what code to write and then writing the code. Writing a test is all about thinking what you want, before deciding how to do it.

    Documenting as a formal executable specification (also known as “a test”) that what the system should do, does not slow you down because you need to type about twice as much text. If it slows you down, it’s because you need to think before acting. Just hacking some code together without that thinking is faster only in the short term (i.e. about 15-60 minutes, until you need to change the code you wrote), and it produces much worse quality.

    Fredrik Bertilsson: Regarding the statement that testing the GUI is only 5-10% of the total testing time, I could only be true for software that lacks any substantial GUI.

    If testing the GUI takes more than 5-10% of all tests, it could only be true if there is barely anything behind the GUI.

    Also keep in mind that the logic of the GUI should not be part of the GUI. It should be a layer which is completely decoupled from the GUI using a suitable design pattern (http://martinfowler.com/eaaDev/ModelViewPresenter.html). In a well designed application, the GUI layer will consist only of GUI library components and simple glue code. If the GUI layer contains complex logic, then the design is wrong.

    Harold: And I still don’t understand why automated tests through the GUI are wrong, you’re not giving much evidence for this point (and as a matter of fact, the company I’m working for is doing fine with 100% of our UI extensively tested every night).

    So you test the GUI every night? Why is it not tested every time that even a single line of code is changed? If the developers hesitate to run all tests after changing a single line of code, then the tests are too slow (http://agileinaflash.blogspot.com/2009/02/first.html).

    Fast feedback is one of the big benefits of TDD and a good unit test suite. You can change a line, run all tests, and know immediately whether your change broke anything. It totally changes the way that you can approach development.

    Fear is the path to the dark side. Tests remove the fear. You can change things without fear of breaking things, because you will find out if anything was broken in a few seconds. You can even write some nasty algorithm with nested loops and conditionals by just trying every possible way to write it (if there are only a couple dozen alternatives), until one of them passes all tests, and after that you can digest the algorithm that you wrote and try to understand why it works.

    Lately I’ve been dreaming about the near future, when each workstation will have tens or hundreds of CPU cores (after 5-10 years?). Because the available processing power will multiply faster than the number of tests we write per project, sooner or later it will become feasible to run all tests between every keystroke. I wonder how that fast feedback will change the way we write code… :)

  21. Avatar
    Chuck vdL 1 day later:

    Harold,

    If you have a good accessable ‘api’ just under the UI skin, then you can drive most ‘end to end’ behavior at that level, it’s faster, easier to test, and if you are using TDD/DbE/BDD then the developers are creating those tests to ensure that they are building the right code that does the right things. (and that later changes to the code don’t break that stuff)

    At the UI level you then need to verify that 1) the proper controls exist on the right pages, in the right places, is visable to the user using the right graphics, etc. This is hard to automate without the test being fragile, as it requires a lot of ‘judgement calls’ 2) CRITICAL. Each and every one of those controls is hooked up to the proper thing just under the skin. (this can usually be automated). If testing as Bob is suggesting above, this is really the weakest link where a bug might creap in and be otherwise undetected. 3) some basic sanity checks that when driven from the UI, everhthing is working, all the buttons and knobs function, etc. (ditto)

    The ‘wrongness’ of driving all your automated testing at the GUI level comes in multiple forms. 1) if that’s ALL your automated tests, then you are missing unit tests, which provide tremendous value to developers on so many levels that there’s no way for me to cover it in a simple comment. 2) there’s no fast simple way for a develper that just refactored some code to determine if it’s broken without fully compiling everything and running the exaustive UI tests 3) The UI is slow, so the tests take a lot longer to run. Which means you can’t usually do them as as part of CI, but instead have to do it as some long overnight process. 4) the tests tend to be fragile, and small tweaks to the UI can break a lot of tests, requiring a lot of work to maintain. This ties up testers and QA folks doing test maintance of non-bug test breaks instead of doing other testing that could be finding bugs.

  22. Avatar
    perottobc 2 days later:

    But Uncle Bob, seriously: No huge burden of test maintenance?

    Great stuff about gui tests, use with care and common sense. But at the end of your post you emphasize API-testing, mentioning FitNesse (among others) as a tool with no huge burden of test maintenance.

    I think Curtis Cooley hits the nail spot on: fragility is the number one concern with automated testing in general. API-testing is a much better concept than gui testing, but there are no silver bullets.

    Philip Schwarz points out that larger projects can easily have hundreds or thousands of acceptance tests. I would like to see this with no huge burden of test maintenance, especially with FitNesse out of the box!

    It is hopeless?

    Of course not, just like you have to design your system to be testable you have to realize that FitNesse has some missing parts, that your project have to figure out how to solve. Failure to do so will give your project a huge burden of test maintenance.

    So, what are the missing parts? For the Java implementation I would suggest:

    • Maven integration (real programmers use maven)
    • Version control system integration (real projects use version controll)
    • A user friendly GUI (real testers deserve a decent gui)

    Of course, it is open source, so we could all fix it. Projects like richness and trinidad gives hope, but having FitNesse integrated with your environment is no easy task.

    Instead I’m more inspired by the a tool well integrated with my development environment, JUnit. Of course it can’t compete with a web gui for interactive testing, but it can compete on total cost of ownership. For me, putting 100% of the tests in FitNesse sounds like an expensive experiment. Especially since some essential parts are missing, and you seldom get it right the first time. To help out JUnit with it’s communication problem I have developed bdoc (bdoc.googlecode.com), that creates documentation out of tests. It would be interesting to get comments on it, a lightweight approach to automatic acceptance testing.

    I’m sorry for my battering on FitNesse, but I feel that it is worth pointing out that any tool needs to be used with care an common sense. A test automation strategy that puts 100% of the tests in FitNesse could be the same as Ruining your Test Automation Strategy, and end up with a huge burden of test maintenance!

  23. Avatar
    Vijay Nathani 2 days later:

    I agree 100% with the contents of this blog. I prefer most tests to be Unit Tests written in xUnit. Integration and System tests are also usually in xUnit. Acceptance testing is in Fitnesse or Concordion. The purpose of GUI testing is only to ensure that values are correctly passed and received. It should never be used to test the business logic.

  24. Avatar
    Emily Bache 3 days later:

    Hi, I don’t think that GUI tests have to be as expensive and difficult to maintain as Bob makes out in this post. I think we should look beyond the popular tools for GUI testing, which I agree have limitations. I wrote my own blog post outlining my point of view:

    http://emilybache.blogspot.com/2009/10/testing-through-gui-costs-less-with.html

  25. Avatar
    Nigel 5 days later:

    If test scripts are well designed and with right tool, GUI automated testing is not only possible, and quite enjoyable experience.

    http://www.infoq.com/articles/refactoring-test-scripts

    We had problems as you described with GUI automated testing before.

  26. Avatar
    Dean Cornish 7 days later:

    Thanks for your thoughts as always UB :)

    I do agree with parts of your thoughts, and disagree with others. I do see great value in testing via the GUI, the issue is how. The pain in updating the automation is the problem..

    When you’re using recorder methods, or lots and lots of redundant code- that pain is amplified significantly.

    Most automation systems I’ve seen- just took a nudge towards page object patterning to remove alot of this pain eg. dont change 40,000 tests with exactly the same line, extract it out and change it once to affect all 40,000, then extend and extend..

    To me, its a fairly natural thing to do, but it isn’t always obvious to some. (eg. non-technicals & managers)

    I firmly believe the old school testing approaches (unit -> system/component level testing -> integration testing) should still apply to your automation suite. I believe my views here correlate with yours thoughts on mocking and testing individual components. That’s a practice I agree with, its typically fast and gives great feedback- and doesn’t get killed by crazy integration points that seem to riddle so many projects out there today. Usually when I see Unit Testing -> Integration testing what I see is pain.

    Thanks for your thoughts as always UB :)

  27. Avatar
    Fabrício Lemos about 1 month later:

    “In the case of automated tests, if you change the GUI, the automated tests break”

    And in case of unit tests, if you change the method signature, or move, or remove the method, the automated tests also breaks. Does this mean we shouldn´t do unit tests? I don´t think so.

    I already worked on systems with great unit tests coverage and no system tests and also on systems with great system test coverage and no unit tests. And, in my experience, the cost of change was bigger with unit tests. Having to change a lot of tests just because of little changes at the api level was really making our refactoring more painful. And that is a bigger problem than making UI changes more painful.

    I still prefer to focus on unit tests, but for a lot of other reasons than the “cost of change”, that could be really minimized on system tests with the use of Page Objects.

  28. Avatar
    digital camera brisbane 4 months later:

    Great post! Thanks for the information

  29. Avatar
    Endep 5 months later:

    Great research! Thanks.

  30. Avatar
    Audio Production 7 months later:

    Very Interesting article and really had me thinking will make sure I check your posts more often!

  31. Avatar
    Printing Services 7 months later:

    This information is some of the best I have found on this topic for me, I would like to appreciate your posting style, it’s really good, keep it up.

  32. Avatar
    PDF to epub Converter 7 months later:

    e found on this topic for me, I would like to appreciate your posting style, it’s really good, keep it up.

  33. Avatar
    Fireworks 8 months later:

    Really a good post!!!!! The author has done a great research on automation strategy. Thanks for the information.

  34. Avatar
    Great Article 9 months later:

    Great stuff about gui tests, use with care and common sense. But at the end of your post you emphasize API-testing, mentioning FitNesse (among others) as a tool with no huge burden of test maintenance.

  35. Avatar
    louis vuitton 9 months later:

    Well , the view of the passage is totally correct ,your details is really reasonable and you guy give us valuable informative post, I totally agree the standpoint of upstairs . http://www.precision-mechanical.net I often surfing on this forum when I m free and I find there are so much good information we can learn in this forum!

  36. Avatar
    Create a Website 10 months later:

    The aim of most businesses with a website is to successfully market their website and increase sales.

  37. Avatar
    Michael 10 months later:

    But what if your test department will only give you sign-off if they have tests that are based on the gui. Because the system is so critical that they need to gurantee when they click on a button, the correct business logic is executed. They would not simply accept a bunch of green lights coming from a tool such as Fitnesse where the developers assure them they all is functioning fine.

  38. Avatar
    cheap vps 11 months later:

    Everybody wants a test automation strategy nowadays. The reason is clear. It take a lot of effort to run a suite of manual tests; and that effort has be be repeated several times per year.

    Consider the fate of this poor customer of mine. The picture you see here is simply the Table of Contents of his manual test plan. That plan has tens of thousands of individual manual tests. It costs them millions of dollars to execute, and they must execute it many times each year. cheap VPS To make matters worse, in these difficult times, management has told the QA manager that he must cut 50% from his manual testing budget. The question he asked me was: “Which 40,000 of these 80,000 tests should I delete?”

  39. Avatar
    Create a Website 11 months later:

    How to install the test automation strategy in our systems. Is there is any particular operating system needed or not.

  40. Avatar
    http://www.yrco.co.nz 11 months later:

    Construction Equipment – Youngman Richardson is New Zealand based manufacturer and distributor of high quality industrial equipment, construction equipment and heavy machinery. Best backup service in the business since 1981.

  41. Avatar
    Reply: 12 months later:

    work from home india

    I hardly know about it. Please give me some elaboration. I’d love to explore more.I hardly know about it. Please give me some elaboration. I’d love to explore more.

  42. Avatar
    Dissertation India about 1 year later:

    There are some very great sources here and thank you for being so kind to post them here.

  43. Avatar
    chlamydia symptoms about 1 year later:

    Read about chlamydia symptoms and chlamydia signs.

  44. Avatar
    Rent Apartment Bucharest about 1 year later:

    I hope most people would agree that record/playback has not shown a lot of promise for long term automation strategies. On the other hand writing good maintainable loosely coupled GUI automation code works great. We need to write and maintain solid code to test our products at all layers.

  45. Avatar
    Terra Cotta Army about 1 year later:

    A test automation strategy that puts 100% of the tests in FitNesse could be the same as Ruining your Test Automation Strategy ….

  46. Avatar
    iPod to iTunes Transfer about 1 year later:

    iPod to iTunes Transfer, transfer iPod to iTunes library, is an all-function transfer for iPod users that supports all versions of iPod and other iPhone devices. It can perform like a transfer, a converter, a ringmaker.

    You can free download it and have a try !

  47. Avatar
    Backup iPhone SMS about 1 year later:

    In fact, you know. the contacts and SMS have more values than an iphone’s own value. You can spend money to buy a new iPhone, However, if you get your SMS and contacts lost, it is hard to retrieve them. So it is very very important for you to backup iPhone SMS and contacts to computer regularly.

  48. Avatar
    Pandora about 1 year later:

    it probably doesn’t deserve all of the build up that I just gave it, but I suspect that I’ll be writing more about this topic. There’s definitely more to discuss.

  49. Avatar
    Harrishcolin about 1 year later:

    Thank you for this good post

    my blogs : calories in food | how to put on a condom

  50. Avatar
    canada goose expedition about 1 year later:

    Test automation strategy is not simple,I used it long time ago,It helps me.

  51. Avatar
    www.heyheytrade.com about 1 year later:

    I don’t know much about this tech. So, I am looking a way to solve it. I need someone explain it. http://www.small-wholesale.com When I come to here, I think I am in the right place. the web gives me a lot of infomation, it is very informative. I think lots of people can learn much here. I will come to here again. Thanks . www.happyjoytrade.com www.lightinthehandbags.com

  52. Avatar
    http://www.blacktowhiteiphone4.com about 1 year later:

    I just heard the gossip that since there’s some technic problems on white iphone 4, iphone 4b is going to release. It that true?

  53. Avatar
    highlights vs goals about 1 year later:

    hmm good article.

  54. Avatar
    hermes replica watches about 1 year later:

    don’t have a comment 40cm birkin comment on that specific case at this best replica cartier love bracelet this time.”Lor said she has talked to bvlgari b zero necklace to lawyers and

  55. Avatar
    Logiciel GED about 1 year later:

    Thank for this good post. I will test it ;)

  56. Avatar
    printing companies about 1 year later:

    Nice post . keep up the good work. Thanks!!

  57. Avatar
    Regim Hotelier about 1 year later:

    Running tests beneath the GUI requires investment in the application code to make this happen. For new applications you can make this investment off the bat.

  58. Avatar
    Download Software For about 1 year later:

    Nice strategy

  59. Avatar
    Cazare in Bucuresti about 1 year later:

    I hope most people would agree that record/playback has not shown a lot of promise for long term automation strategies. On the other hand writing good maintainable loosely coupled GUI automation code works great

  60. Avatar
    Criminal Records about 1 year later:

    The GUI shouldn’t even be turned on. Rather, your tests should invoke the same business rule APIs that the GUI invokes. Indeed, the tests become an alternative UI.

  61. Avatar
    dermatologist about 1 year later:

    Great! This is a interesting read. It’s a very useful and informative information for me.

  62. Avatar
    cable ties about 1 year later:

    This is a interesting read.

  63. Avatar
    Advance America about 1 year later:

    Useful info! Thank for sharing.

  64. Avatar
    killua about 1 year later:

    Welcome to PDF to ePub Converter

    The PDF to ePub converter is a perfect and professional software to help you convert PDF to ePub. Meanwhile the PDF to ePub Converter enables you to convert PDF to ePub and ePub to PDF. Many kinds of formats such as HTML, XML, TEXT, Gif, JPEG can be converted by this powerful PDF to ePub converter. And you can use this PDF to ePub Converter to parse PDF file(include all text, image) and rebuild it. Then you will get the perfect output ePub files.

    By the way, the another PDF to EPUB Converter,after conversion by it you can enjoy the eBooks with iPad, iPhone, iPod Touch, Sony Reader, iRex Digital Reader 1000, PocketBook Reader and so on. Meanwhile, the converter suppports converting in batches and with the intuitive and clear interface, it is very easy even for the beginner. So you can have a try of this excellent PDF to EPUB converter. It will benefit you a lot!

  65. Avatar
    Designer Sunglasses about 1 year later:

    Buy $10 Replica Designer Sunglasses with 3-day FREE SHIPPING

  66. Avatar
    Sean about 1 year later:

    You have written a very comprehensive coverage about test automation strategy. It makes sense not to use the GUI for the automated test. Using the APIs testing does indeed give you a robust test automation strategy.

  67. Avatar
    places to visit in Asia about 1 year later:

    I hope most people would agree that record/playback has not shown a lot of promise for long term automation strategies. By the way great article.

  68. Avatar
    Parasols about 1 year later:

    Thanks for putting this up.Thanks again#

  69. Avatar
    Parkour Training about 1 year later:

    Several people guess parkour seems easy others think it seems impossibly hard. Whatever you believe, Parkour is not comfortable but it is also possible. Go to Parkour Training and find out more about training. With the appropriate attitude and the will to perfect proficiency, who knows how far you could get. There is no end to better your parkour power. There is the possibility of always improving and there is no roadblock to hit when you are ‘finished’, there is perpetually a novel place to develop or a another leap to jump.

    Parkour and Freerunning are different but not completely. Parkour was disciplined prior to Freerunning by David Belle. It comprises of overleaps and leaps. The big doctrine behind parkour is not be contained by your environment, which most people are. They have to walk on decided designated ways to get from A to B, but by practicing parkour there are no architectural bounds and your way is available for you to choose.

  70. Avatar
    Dory about 1 year later:

    great article, very useful information, thank you. Social Network

  71. Avatar
    Seobaglyak about 1 year later:

    This is a interesting read.

  72. Avatar
    daemon about 1 year later:

    automation? Hmm… I’ll thinking about it…

  73. Avatar
    world news center about 1 year later:

    great informations, very useful… thx for you

  74. Avatar
    Sydney CBD Hairdresser about 1 year later:

    Interesting post and thanks for sharing. Some things in here I have not thought about before.Thanks for making such a cool post which is really very well written.will be referring a lot of friends about this.Keep blogging.

  75. Avatar
    Google about 1 year later:

    welcom to my blog Wood Pellets Fuel

  76. Avatar
    okey oyunu oyna about 1 year later:

    very very useful. Thanks

    internette görüntülü olarak okey oyunu oyna, gerçek kisilerle tanis, turnuva heyecanini yasa.

  77. Avatar
    red pumps about 1 year later:

    Do you like the Red Pumps? They are very popular in the young friends, because they have different styles. We are Red Heels and Red Shoes providers. We can give you the cheapest price and the best service, and do you want to join us at once?

  78. Avatar
    business furniture and construction about 1 year later:

    greattt one,,,

    Thanks for sharing with mee… hihiiii

    i like this web blog business, home, and construction web blog

  79. Avatar
    canada goose jackets about 1 year later:

    How could Vivi do that to Hana! D: But, thanks for the chapter :)

  80. Avatar
    Iqbal about 1 year later:

    The post (and expert feedback thereafter) reconfirms my thinking on test automation strategy. Its sometime an uphill battle between Automation QA and Development engineering, but its well worth the effort. I feel connected to this poster.

  81. Avatar
    Nose Job Recovery about 1 year later:

    Anthony, wouldn’t it be better to invest all this effort in improving your code base to enable ‘skinning the application’, instead of building elaborate crutches to make GUI tests less brittle? This would not only result in faster tests but also in cleaner, more well-designed production code.

  82. Avatar
    Best Phone Lookup about 1 year later:

    I visited this page first time and found it Very Good Job of acknowledgment and a marvelous source of info…......Thanks Admin!

  83. Avatar
    Jewellery about 1 year later:

    fashion jewellery shop

  84. Avatar
    Hancy about 1 year later:

    Hello Friend,Whichever style of Fashion Shoes you’re looking for, classical, fashionable, lovely or the latest design, you can find your favorite designer shoes in www.dunkpage.com ,several days ago I bought one pair of shoes from there,It’s beautiful and very comfortable!

  85. Avatar
    Pdf to kindle about 1 year later:

    Automation is the necessary things for internet users and his life also..

  86. Avatar
    Pondicherry Jobs about 1 year later:

    Great post and useful to all, including me…

  87. Avatar
    cover girl coupons about 1 year later:

    That’s a very interesting strategy you have there.

  88. Avatar
    car accident injury claims about 1 year later:

    This is a very nice blog & very informative good job keep it up this kind of blogs helps a lot to people who are in need of this kinda information

  89. Avatar
    lose thigh about 1 year later:

    automation is only effective for regression testing. Plus many business data can not be reused (such as signing up new clients). Therefore in practice, the automation is only a small percent of the entire QA process. Not sure how the 50% saving is calculated.

  90. Avatar
    Kevin Hardaway about 1 year later:

    Consider the example of a travel agent making airline, hotel, and car rental reservations for a client. With on-line processing, each activity is handled by a separate reservation system, which can make the process time-consuming.

  91. Avatar
    applebees about 1 year later:

    Sometimes I think people write and do not really have much to say. Not the case here. You certainly have something to say and you say it with style, my man! You have an interesting way to draw people in, what with your videos and lyrics. You’ve got a good punch one or two for a blog!

  92. Avatar
    Coach Tote about 1 year later:

    I am happy to have found this blog, and more happy to have long tail explained so well. Thanks.

  93. Avatar
    Pandora about 1 year later:

    Nice one, there is actually some good facts on this blog some of my friends may find this worthwhile, will send a link, thanks.http://www.magicjewelrybox.org/">Pandora

  94. Avatar
    shj116369203@gmail.com about 1 year later:

    I am happy to have found this blog, and more happy to have long tail explained so well. Thanks.

  95. Avatar
    Ouafa about 1 year later:

    How to install the test automation strategy in our systems ?

  96. Avatar
    Bowtrol about 1 year later:

    hmm ,i’m not sure if this is what i’m looking for but anyway this is interresting and could be useful some day,thanks for taking time to write such cool stuff

  97. Avatar
    flower bed edging ideas about 1 year later:

    The post (and expert feedback thereafter) reconfirms my thinking on test automation strategy

  98. Avatar
    rhinoplasty healing about 1 year later:

    Running tests beneath the GUI requires investment in the application code to make this happen. For new applications you can make this investment off the bat. For legacy code, the chances are that the application has not been designed this way.

    For legacy applications, I think it is a worthwhile investment to replace manual rote testing with automated tests through the GUI, even though such tests are brittle. You just have to be aware that they are brittle, and when you change the GUI then you change the infrastructure to make it easier to test the logic beneath the GUI and the GUI itself separately. If you keep up with this continual investment then the automated tests will become less brittle over time.

  99. Avatar
    bagsupplyer about 1 year later:

    Discount!Replica Juicy bikinis wholesale at lowest price

  100. Avatar
    bagsupplyer about 1 year later:

    Discount!Replica Lacoste Bikini wholesale at lowest price

  101. Avatar
    bean bags about 1 year later:

    Great this is, suprising actually I was not expecting this

  102. Avatar
    roper rhodes about 1 year later:

    Very interesting, great article

  103. Avatar
    beats by dre store about 1 year later:

    the GUI and the GUI itself separately. If you keep up with this continuahigh quality headphones new design headphones

  104. Avatar
    mobile signal booster about 1 year later:

    This strategy of test id really awesome and i found such a great tips on how to prepared and how to learn a little things.

    mobile signal booster

  105. Avatar
    fantasy factory chanel about 1 year later:

    fantasy factory chanel are one shot of the most popular designer handbags lines in the world, with a want bag of tradition and rubber stamped mettle. If you are looking for best Coco Chanel Bags around the world, you fancy to look Chanel handbags. A mild and light weight handbag plant silver or a golden take made of metal is involved ropes the clutch bag.

  106. Avatar
    bagsupplyer about 1 year later:

    I really enjoy your articles. Very well written. Discount fashion women LV Lowcut shoes from China for wholesale free shipping,more order, more discount

  107. Avatar
    what is an iva about 1 year later:

    I substantially agree. Thanks a lot for the tips.

  108. Avatar
    jobst compression stockings about 1 year later:

    Great tips given.I really appreciate what you have written.Very smart and excellent information given in your blog.I really liked it.Thanks a lot for sharing.Keep sharing.

  109. Avatar
    louis vuitton handbags womens on sale about 1 year later:

    Thanks for the interesting story, although it did take rather a long time to complete reading. (English isn’t my country’s language) Could I ask in places you received your sources from? Thanks!

  110. Avatar
    aeroporika eisitiria about 1 year later:

    Automation is the necessary things for internet users and his life also..

  111. Avatar
    aeroporika eisitiria about 1 year later:

    Automation is the necessary things for internet users and his life also..

  112. Avatar
    Louboutins over 2 years later:

    asdasd +f98as9dssss

  113. Avatar
    moncler over 2 years later:

    asdfsad f+9g8sd+8 +90sd8gdd

  114. Avatar
    Christian over 2 years later:

    as dghf8f8fff

  115. Avatar
    Ashley Bowling over 2 years later:

    Great post, When you return to write?

  116. Avatar
    Flagyl 400mg over 2 years later:

    I agree in this statement “The number of mocking frameworks has proliferated in recent years”

  117. Avatar
    credit calculators over 2 years later:

    great to have this site. thanks for sharing.

  118. Avatar
    Pandora Bracelets over 2 years later:

    But for the similar profession character accessories, it also need to consider beads jewelry industry development ,which may bring competition and impact, and we should adjust industrial structure and product positioning, making our products get continuous development in the market competition.Pandora Bracelets 4Pandora jewelry (charmilia beads) derived from Scandinavia’s latest fashion statement and become fashion world rise

  119. Avatar
    christian louboutin over 2 years later:

    Hi buddy, Great post, please write more about this, and I like it. I really enjoy reading your blog popular distributed: a good article waiting for you!

  120. Avatar
    Download Android Apps over 2 years later:

    You can definitely see your expertise in the work you write. The world hopes for more passionate writers like you who aren’t afraid to say how they believe. Always go after your heart.

  121. Avatar
    shopping us online over 2 years later:

    I think you’ll find, however, that the more you design your systems to be testable, the more you will naturally concentrate on API tests as opposed to GUI tests. This is because it is far easier to understand API tests.

    The Systems that are designed to be tested are much more comfortable to check. This makes it more easy to write both API tests, and GUI tests, and reduces the coupling issues.

  122. Avatar
    a real estate over 2 years later:

    great post informative and knowledgeable thanks

  123. Avatar
    Cheap Beats By Dr.Dre over 2 years later:

    relative to other headphones model is more suitable for use in portable system

  124. Avatar
    Dr Dre beats Headphones Canada over 2 years later:

    integrated and easy to utilize. Headset stylish and generous

  125. Avatar
    beats by dr dre over 2 years later:

    A university studentbeats by dr dre caught by the enemy, the enemy tied him at the poles,just beats solo headphones purple and then asked him: say, where are you? You do not say it electrocuted! Scheap dr.dre beats studio headphones balck/yellowtudents back to the enemy a word, the result was electrocuted, he said: I am TVU.Hot sale beats by dr dre pro headphones

  126. Avatar
    beautyjewelry.org over 2 years later:

    Thanks for the shopingpandora in this website i find some good Thomas Sabo jewerly.Now I put it introduced to you.Thomas Sabo jewerly

  127. Avatar
    pligg over 2 years later:

    Great post! Thanks for the information…

  128. Avatar
    Sac Gucci over 2 years later:

    Conception unique de la Sac Gucci est très sympa,Sac Gucci Soldes sont de qualité fiable et à prix raisonnable.Sac Gucci Pas Cher a été considéré comme un Gucci Soldes signe de tendances de la mode et des Gucci Sac a main sélection symbole de statut social,Gucci Soldes online sélectionnez en ligne un Gucci Pas Cher, facile d’avoir un Sac a Main Gucci Soldes 2011 populaire.Oui,désormais tomber en amour avec Sac Gucci Guccissima.

  129. Avatar
    tv show over 2 years later:

    very good article. thanks a alot!

    Keep up the good work!

  130. Avatar
    mac cosmetics over 2 years later:

    mac cosmetics oakley active sunglasses wholesale mac cosmetics Oakley Sport Sunglasses mac lipstick Yanggengsheng

  131. Avatar
    http://www.monsterbeatsfactory.com over 2 years later:

    The new white version of the flagship fashion defeated by the Dr. Dre Studio Headphones represents a continuing commitment to the personal audio space design and good technical level is high. Monster Beats Dr. Brenner. Dre, Jimmy Iovine and Monster co-founded in 2008, Dr. monster beats by dr. dre, to provide consumers with a new headset design new level of audio performance and extreme clarity, deep bass and full power which had been lacking in conventional headphones. http://www.monsterbeatsfactory.com

  132. Avatar
    good jokes over 2 years later:

    Great article. Thanks for the detailed post!

  133. Avatar
    Louis Vuitton sale online over 2 years later:

    It’s useful to study your blog. The information of your site is precisely excellent, and your blog design is Simple good.

  134. Avatar
    reclaim care home fees over 2 years later:

    I genuinely liked reading by means of your post! You’ve great high quality material. I may well advise you to come up with weblog posts much more often.

  135. Avatar
    Polo Ralph Lauren Pas Cher over 2 years later:

    Thanks for this beautiful website. I have enjoyed reading through a few of the articles.

  136. Avatar
    reclaim care home fees over 2 years later:

    Substantially, the write-up is truly the very best on this laudable subject. I concur inside your conclusions and will eagerly seem forward to your future updates.

  137. Avatar
    deals over 2 years later:

    Great post and great blog!! thanks!

  138. Avatar
    winwindeals over 2 years later:

    thanks for this great blog!! I enjoy reading your articles!!

  139. Avatar
    reclaim care home fees over 2 years later:

    Congratulations for posting such a useful blog. Your blog isn?t only informative but also extremely artistic too. There usually are extremely couple of individuals who can write not so easy articles that creatively. Keep up the good writing !!

  140. Avatar
    Steve Waters Vancouver over 2 years later:

    It’s random act of kindness week, have you done yours?

  141. Avatar
    PDF to PowerPoint converter over 2 years later:

    PDF to PowerPoint Mac – is specially designed for Mac users to convert PDF to PowerPoint on Mac OS X. With this unique PDF assistant, Mac users can easily make professional PowerPoint presentations from read-only PDF files, with all the original text, images, tables, layout and formatting accurately preserved with the PDF to ePub converter. The program also helps users to produce editable and dynamic PPT presentations from PDF files with just several clicks.

  142. Avatar
    DRM removal software over 2 years later:

    Why is this so runious? no one can understand it and how it works?

  143. Avatar
    fashion pr new york over 3 years later:

    I am absolutely amazed at how terrific the stuff is on this site. I have saved this webpage and I truly intend on visiting the site in the upcoming days. Keep up the excellent work!

  144. Avatar
    fashion pr new york over 3 years later:

    nice share buddy its really easy I try this its working well here. Now I have my own twitter widget. Thanks for sharing….

  145. Avatar
    ola ta deals over 3 years later:

    Nice share. Thank you fro this wonderfull post.

  146. Avatar
    bladeless fans over 3 years later:

    Ruining your Test Automation Strategy. 145 good post149

  147. Avatar
    louboutin sales over 3 years later:

    Ruining your Test Automation Strategy. 146 hoo,good article!!I like the post!174

  148. Avatar
    Injection mold over 3 years later:

    Intertech Machinery Inc. provides the most precise Plastic Injection Mold and Rubber Molds from Taiwan. With applying excellent unscrewing device in molds,

    Intertech is also very professional for making flip top Cap Molds in the world. Mold making is the core business of Intertech (Taiwan). With world level technology, Intertech enjoys a very good reputation for making Injection Mold and Plastic Molds for their worldwide customers.

  149. Avatar
    hermes birkin parchment over 3 years later:

    If you’re a business who is using PP shopping bags, or a consumer who is purchasing PP woven handbags, you want to make sure that you are getting a high quality product that will last for a long time without much visible wear and tear?

  150. Avatar
    Cap Mold over 3 years later:

    With more than 20 years of experience, Intertech provides an extensive integrated operational ability from design to production of molds 100% made in Taiwan. Additional to our own mold making factory, we also cooperate with our team vendors to form a very strong working force in Taiwan.

    For the overseas market, we work very closely with local representatives in order to take care of the technical communication and after-sales service to our customers. We also participate in the EUROMOLD & FAKUMA exhibitions and meet our customers every year in Europe. By concentrating on mold “niche markets”, we play a very useful mold maker role from the Far East whenever customers want to develop their new projects. We provide services from A to Z to our customers on a very economic cost and effect basis.

  151. Avatar
    best cosplay over 3 years later:

    http://www.outfitscosplay.com/cosplay-accessories/gundam-seed-accessories Deluxe Gundam Seed Accessories for Sale.Find your favorite characters and cosplay outfits from all the popular anime and games.

  152. Avatar
    li wo over 3 years later:

    beats by dre headphone vivienne westwood Melissa chirstian louboutin sale michael kors outlet store vivienne westwood handbags

    michael kors outlet storeThe newly elected President of Egypt Morsy muhammad published the first speech since his victory over ahmed ShaFei g announced on Sunday night, vowed to “protect the international agreement and obligations”, this seems to be a reference of the peace treaty with Israel..chirstian louboutin outlet

    vivienne westwood melissa Morsy tried to appease those worried that he will take immediate action to change the whole Egypt, is expected to become the President all the egyptians, “muslims, christians, old people, children, women and men, farmers, teachers, workers, those engaged in the private and public sectors, the businessmen.”beats by dre headphone

    michael kors clearance bags Morsy welcome Obama’s support, the two leaders reaffirm their dedicated to advancing US-Egypt partnership, agreed to maintain close contact with the future of a few weeks, months, according to the statement. Christian Louboutin Daffodile 160mm Pumps

  153. Avatar
    abercrombie over 3 years later:

    Il était certainement intéressant pour moi de lire le blog. Merci pour elle. J’aime ces sujets et tout connecté à eux. Je voudrais en savoir plus bientôt.

  154. Avatar
    celine handbags over 3 years later:

    Wow what an awesome article here. I must say that it’s one of the best things I’ve actually read.

  155. Avatar
    injection mold over 3 years later:

    injection mold

    For more than 20 years, Intertech has been providing award winning design and production services for various molds. In addition to Intertech’s own factory,we also cooperate with our sales team to form a very strong force in Taiwan.

    We at Intertech also work very closely with our local representative overseas to provide technical communication and after-sale service to our customers. Our products can be found every year at the EUROMOLD exhibition to share our ideas and innovations to the world.

    Intertech is the leading mold manufacturer in the Asian Pacific Market that can provide complete and cost efficient services to our clients. Mold services offered by Intertech include plastic injection molds, die-casting molds, silicone rubber molds, liquid silicone rubber molds, LSR molds, rubber molds, press molds, and hot runner molds (MoldMaster, MasterFlow, LKM, and Incoe systems).

  156. Avatar
    plastic injection mold over 3 years later:

    Intertech Machinery Inc.

    With more than 25 years of experience, Intertech provides an extensive integrated operational ability from design to production of molds 100% made in Taiwan. Additional to our own mold making factory, we also cooperate with our team vendors to form a very strong working force in Taiwan.

    Main Products:

    Injection Mold, Silicone Molding, Rubber Mold, Silicone molding, PC High-Gloss Plastic Mold, Die Casting Mold, Silicone Mold, Silicone Rubber Mold, Liquid Silicone Rubber , Cosmetic Packaging Mold, Medical Products Mold, Engineering Plastic Molds, Home Appliances Mold, etc…

Comments