Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider caching compiled pages to help performance #29

Open
KathleenDollard opened this issue Jan 16, 2016 · 3 comments
Open

Consider caching compiled pages to help performance #29

KathleenDollard opened this issue Jan 16, 2016 · 3 comments
Milestone

Comments

@KathleenDollard
Copy link

Our app, and I suspect many legacy apps, are rather large. It would really help devs if it was possible to avoid recompiling all of the aspx pages on test run.

@csharpfritz
Copy link
Owner

I REALLY like this idea.. We need a perf iteration sooner than later

On Jan 16, 2016, at 10:50, KathleenDollard notifications@github.com wrote:

Our app, and I suspect many legacy apps, are rather large. It would really help devs if it was possible to avoid recompiling all of the aspx pages on test run.


Reply to this email directly or view it on GitHub.

@KathleenDollard
Copy link
Author

Well, if I wrote perfect code and never had to debug and never had failing tests it would be less painful. Or if Edit and Continue worked. But with all that working against me, it's a bit painful

@csharpfritz
Copy link
Owner

After some testing last night, I found that the forced precompile of the entire application increases the run-time of the tests significantly. My precompiled application total test time was 0:20

I started by removing the precompile step altogether and then optimized the compiler flags. I was able to get the initial test run down to 0:17, but subsequent runs are now at 0:08. If at any point the code-behind or the ASPX/ASCX content changes, the test execution time ramps back up to 0:17 as these files need to be re-evaluated.

The bigger impact is when running individual tests. In the postback_simple_fixture, there are currently 3 tests. With precompile turned on, it takes 0:15 for just those three tests. In the optimized configuration, I can repeatedly execute the three tests in 0:05.

We're caught by the ASPX architecture, as the standard .NET compile step against the project does not merge these with their code-behind content and deliver a fully compiled application. At some point, this compile step must be executed.

I think this is a good start for the optimization, and will open a PR to dev branch but leave this feature branch open for further work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants