Thursday, October 25, 2007

Context it!!

We have done a little backtracking with regards of the original way we planned to handle assertions. Interfaces and abstract classes will be handled the same way: context strip.

Here is goes another snapshot of the work-in-progress:


Labels: , , , , , , , , , ,

Wednesday, October 24, 2007

What an eye sore!! (102,796)

Well, I finally managed to download all the components for Visual Studio 2008. It was long a process because of the size of the archives involved. Regardless, I have to say that the process was smooth.

Now to the substance, comparing DevRiot and the test tools of VS 2008.

I started with the basic: take an int and return it.

Nothing else fancier where DevRiot has advantage over VS: gui testing (on PC and devices, on and off screen), dynamic array/data structure manipulation, dynamic build test tress, built-in load and stress testing, etc :-}

It is an eye sore: test projects, test types, test attributes, test contexts, asserts, clicks, clacks to get to the point of to modify the test source to add the only thing that is of interest to the user: desired input and expected output. That is all a user needs. If the user needs to add a second test: repeat the process :-}

The thing is dog slow. It took (on average) 102,796 times more ticks than DevRiot. Granting that I was using Virtual PC but the times I am using for DevRiot are from 4 years ago on much slower machine than the current one I own.

If we assume a 50 times handicap (meaning that a 5000% improvement) DevRiot is still around 2000 times faster.

No wonder the execution time report is not the default one.

I tried to mess MS tool with changing return types, it choked like a child. Then I tried exceptions or even setting scenarios. It would have required getting into coding, api, etc..

I do not think they have clear concept of what automation means.

So, bottom line: why spend more time using MS QA infrastructure if it is not going to yield faster development cycles?

The pricing structure and road map discussion, I will leave for other post.

Labels: , , , , , , , , ,

Tuesday, October 23, 2007

Slipping Cookie...

As I wait for Visual Studio 2008 to download/compare its QA features against DevRiot (it takes a bit to download everything) and work on the context menus of DevRiot, there was this funny piece of news:

Hamilton admitted that his car stalled because he pressed the reset button by mistake.

Go figure, which kind of strategic thinking went through Dennis' head. Back to work...

Labels: , , , , ,

Wednesday, September 26, 2007

DynArray...

The dynamic array, or data structures, logic is almost ready. We just need to add the dynamic shrinking to the nodes' context menu. Here we have a series of snapshots of how it's working:

1) Double-click the node to set or change the array length.



2) Type in the new desired length.



3) The tree readjusts itself.

Labels: , , , , , , ,

Thursday, August 23, 2007

Prototipo; fundamentals, what fundamentals

The VS tool is coming along smoothly but a little bit slow. Phurnace's project has been quite interesting: started with a prototype with an rcp front-end and has turned into a WebSphere process server, web-services thing.

I have to admit that is highly interesting.

In this astonishing summer of news, there was this particular one about onshoring on cnn: an indian company was offshoring to Ohio some call center operations because the lower wages were not enough.

If the process and where economic value is created are not understood, there is little chance to success by trying anything else...

Labels: , , , , , , , , , ,

Monday, April 16, 2007

Less wired Fedora!

I have to say that I have been busy: doing some RCP architecture, writing the VSIP for DevRiot, etc.

One of the things that I found less attractive about eclipse was the pda/device support. It is not as clean and streamlined as Visual Studio.

But the thing that kills me is that to add a custom icon to VS turned into a major hunt. I ended up using/modifying the one that is generated by the wizard. So it is puzzling that VS gets the pda/devices so right and messes up the custom bitmap icons.

But the no-way-jose :-} goes to Fedora Core. Last time I tried to use FC was in version 4. I decided to drop it because setting up the wireless was was turning into one nightmare of kernel modules, firmware, and plain cross-your-fingers.

So I thought, let's try FC 6, after all it has been two releases since and FC 7 is already in the works. I needed a clean Linux installation for the RCP thing.

Guess what? FC 6 was the same mess. I thought it could be me but their own forums are filled with the same story.

OpenSuse worked out of the box...

Labels: , , , , , ,

Monday, April 02, 2007

VSP, bootstrapping!

The add-in architecture we had is not good any longer. Using a Visual Studio Package makes much more sense. So we are dealing with that now because it is a tad different from what we had.

And I just got off the phone with a friend/client that needs some Java work...

Downloads of the eclipse beta are going well. No complaints so far :-}

Labels: , , , ,

Saturday, March 24, 2007

Variable Load!

Interesting visitors to our blog lately. Some have registered in the beta program, some have not.

We are looking at ways to cleanly allow the user invoke methods with a variable number of parameters. So far we are leaning towards double-clicking the parameters tab to insert a new parameter state tab.

The design on Load & Stress is going too. Before we try to measure memory and all that, we should make sure the user agrees with the state the object is after the beating. It requires some thought.

Labels: , , , , , , , , , , , ,

Thursday, March 22, 2007

Why all that bloating?

As I move along with the VS add-in of DevRiot, I started to look again at the built-in features of VS.

What a mess! To end up asking the user the same information that DevRiot directly asks, there is an endless sequence of menus, options!

Orcas is following the same path. Why does the user need to deal with code? Because it executes faster? Obviously not.

That automatic code generation just works with native types. After that is back to set/get methods to set objects ready to tests. Or play PrivateObject nesting game.

Does it provide GUI testing for PC or devices? Nope.

Does it analyze build trees or AST? Nope.

Again, it is a step forward but short. Otherwise people would not still be asking "why white-box testing is ignored"

Labels: , , , , , , , , ,

Wednesday, March 21, 2007

Beta FAQ:

A few questions have come up:

Do you Support Swing?

Yes. Actually, we are far along in that regard. We just wanted to release something that worked in J2SE and J2ME uniformly.

Swing is not an official J2ME package so we decided to remove it from the release.

How does the Private members access work?

Think of it as Visual Studio's PrivateObject but on steriods. And for Eclipse, too.

It is always there working for the user. But the user does not know it. The feature is transparent and does not require coding. It is also immune to refactoring changes.

It also works for all the types involved in a test (gui or unit): parameters, fields.

It also works like a drill: the user can click into an object state as deep as needed.

Is it only the plug-in/add-in?

No. The plug-in/add-in has two things in it: the plug-in/add-in logic and the reduced version of the engine. The plan would be to provide an automation server where the output of the plug-ins/add-ins are consumed and value added stats are gathered.

This could be provided as a service or as an attachement to SCM.

Labels: , , , , , , , , , , , ,

Tuesday, March 20, 2007

Virtual Solution 2209

Well, the actual performance increase over Nunit is 2209 times. Our average cost per test is around 8 ticks, while for Nunit 2.4 is 1700+ ticks per test.

So, I decided to look at the Test tools offered by VS 2005. Although a step in the right direction, not even close to the streamlining that most software operations need.

It is still a solution based on writing code (as if figuring out how to make code fail does not take time), they have to learn a never-ending list of attributes.

No wonder, people google for "why+white-box+testing+is+ignored" :-}

It allows to access private members (fields and methods) but their approach seems a babushka doll. It works fine if those fields are native types.

But if those fields are something more complex? Can the users apply the PrivateObject trick to types not-under-test?

After all, the type-under-test methods are affected by the internal state of any of its internal state components. Ah, the babushka doll!

For load testing, Visual Studio does not "require" to write code. It just puts the all the tests the user already wrote in a bundle.

What about daisy-chaining tests from the data layer or business logic layer to the gui to verify behavior across the layers? Even some tools, like code coverage, are there with the wrong crowd.

Hey, I am just trying to differentiate our product! ;-}

Labels: , , , , , , , ,

600+ Faster

As we polish the new architecture in .Net, we decided to compare the execution speeds of Nunit 2.4 and DevRiot.

DevRiot is still cookin!! Just considering the overall times, not the average, DevRiot is in the order of 600+ times faster. Plus it is also a GUI testing engine that runs in Windows as well as PocketPC.

Why do we consider this important? Testing and quality represents a huge percentage, according to NIST it could reach 80%, of a given project costs. Vista is another example of this efficiency problem.

The startling thing is very few, if any, high-tech strategy courses or implementations really address this. So which kind of strategy ignores altogether 80% of the problem?

A former, I think, SAP CEO mentioned the software industry needs to copy the auto industry. McKinsey & Co has written articles about it too. Microsoft Research aims in that direction also. But the facts seem to say something else. Just a look at the different internet forums will confirm this.

So if we want to improve the situation we need to use the scarce human time in more efficient ways, and let the computers use their cycles in something useful.

Anyways enough ramblings, here is the snapshot of DevRiot .Net

Labels: , , , , , , , , , ,

Sunday, March 18, 2007

Weird Downloads!

Well, After announcing the beta availability really low key, we have had a great download rate. Although some weird downloads:

Somebody using msn downloaded the Mac version of DevRiot for Eclipse and some wip snapshots.

Switching to Visual Studio after some months of serious Eclipse plug-in development is a true shift in the way of developing tools. Enjoyable but different :-}

Labels: , , , , , , , , ,