.NET Framework - pre-integration testing problem
Asked By John Grandy
03-Nov-09 10:08 PM

This is a higher level question, not specifically a technical one.
I am hoping to find someone who has experience developing an application
that will interface with an external api ( perhaps a web api ) where during
the coding/testing phase it will not be possible for the app under
development to actually call into this api. This could be because the api
is not yet implemented ( or is only partially implemented ), or is not yet
available due to higher-level project issues ( multi-vendor coordination,
political, legal, etc. ) , or is available but only at bandwidth/reliability
markedly below anticipated production levels, etc.
The bottom line is that it is impossible to incorporate this api within the
development environment. Only at time of deployment will it be possible for
the app to actually call into the external api.
What is available is the external api's interface spec. Also known is the
expected I/O for various use-cases -- however, it cannot be assumed this is
accurate.
Some options I can think of are :
1. Write a proxy api in the project's language that simulates the behavior
of the real-world api ( as much as possible ).
2. Write an "exploration test harness" that right now will be delivered to
the production environment to run against the actual api and simulate the
calls made in common use cases. This exploration test harness is
lightweight and is designed so as to easily integrate into the existing
target production environment. It is exploratory in the sense that it is
meant to be expanded/refined as more is learned about the behavior external
api.
I realize this is a somewhat vague, indeed rather partial statement of the
problem, but perhaps there is someone out there with experience in this
scenario who has some thoughts ...
Thanks.
Linux
(1)
ASP.NET
(1)
IIS
(1)
VB
(1)
Windows
(1)
Mike
(1)
Java
(1)
Anomalies
(1)
Family Tree Mike replied...
This is not on the surface a csharp question, but...
With option 1, I do not know why you added "... in the project's
language...". With a remote API, you do not particularly care what it
was written in, if you even ever know it. Option 1 seems possible
though if you tasked to write an app to a solid API specification. I
would say it does not have to "simulate the behavior" of the API, but
rather just take the same inputs, provide some reasonable outputs, and
provide perhaps the typical delays that are expected.
Option 2 would be good for the remote team, if you are at all working
with them. If you are not working "with" them to specify the
connections, then you are probably best going with option 1.
--
Mike
John A Grandy replied...
Hi Mike, and thanks for the response.
Yes, not specifically C# but where else to post ? This newsgroup has the
largest contingent of experienced developers.
Good idea re adding simulated delays.
Why do you think language does not matter ? Let's say the external web api
is Java/WebSphere/Linux. If I write the proxy api in C#/ASP.NET/IIS/Windows
( even assuming a 100% accurate spec ) would I not potentially introduce
some technology-specific anomalies ?
Family Tree Mike replied...
John,
Sorry, I was thinking more of a .Net Web Service context, and that you
should not care that it was a C# or VB code behind it. That is a
different question than the Web Service platform.
--
Mike
ASP.Net - the "Big Picture"? .NET Framework Hi, I have a few questions about ASP.Net, as I have been using it for a while but my knowledge of the "big somewhat vague. . .) - In a closely-related matter, do any languages have issues accessing the full ASP.Net environment and facilities? For example, I found accessing .Net Collections in JScript problematic (though I eventually worked out how to do it). - What support to I have for the "native" Windows features under ASP.Net? Is everything done through the CLR? Can I access ADO COM objects in a
This is a second post on this as the first never showed up in search. ASP.NET Security Discussions ASPNET security (1) Jerry Weng Microsoft Online Community (1) Silverlight (1) NET Framework (1) ASP.NET (1) RIA (1) WCF (1) Application (1) Cancel this. The original showed up. Was a for posting. From your post, my understanding on this issue is: you want to use ASP.NET security in your Silverlight application. If I am off base, please feel free to let me know. If we want to use ASP.NET Authentication in Silverlight applications, we need to create an ASP.NET Application Service. ASP.NET
a number from 1 to 10 .NET Framework hey all, i want to create an asp.net web page that allows internet users to pick a number from 1 to 10. how and the same time). Is this a concurrency issue? thanks, rodchar C# Discussions AppDomain (1) ASP.NET (1) WCF (1) IIS (1) GUIDs (1) Otherwise (1) Database (1) Assign (1) hi Rodchar, You may use ten number some other user does. But since you are trying to implement this in an ASP.NET project, you need to post your question in the ASP.NET newsgroup. Your concurrency issues are specific to ASP.NET and thus you will only
Seriously, who CODES in Linux? What IDE? Seriously. .NET Framework Seriously, who codes in Linux and what platforms, IDEs, etc do they use? What language? I code in C#, have done Windows Forms, WPF, Silverlight, ADO.NET, ASP.NET and some VB and Access dB programming, though I prefer ADO.NET. Getting into WCF now (SOAP) web using VS 2008 but might upgrade to VS 2010. Seriously, why would ANYBODY code in Linux? Why? You can port Silverlight to Linux. I think in theory ASP.NET is platform neutral as well. And what language would
VB Executable as Web Application .NET Framework I have good working knowledge of Excel VBA and am thinking of learning to create Web Applications. Without much knowledge in ASP.NET or PHP, and wanting to take the easiest path, I was wondering if it would be easier to just develop VB.NET executable applications (using MS Visual Basic 2008 Express Edition) as web applications. This would upon, and has anyone gone down this path and with what pros and cons ? Thanks. VB.NET Discussions Windows XP (1) Active Directory (1) Visual Studio (1) SharePoint (1) Linux (1) Vista (1) Adobe (1) Excel (1) If you have full trust on the user computers, there is not any limit to access the Internet using a Windows form or a WPF application. If you do not have that trust (users have to