ANOVA: testing assumption of normality for many groups with few samples per group Assume the following situation:
we have a large number (e.g. 20) with small group sized (e.g. n = 3). I noticed that if I generate values from the uniform distribution, the residuals will look approximately normal even though the error distribution is uniform. The following R code demonstrates this behaviour:
n.group = 200
n.per.group = 3

x <- runif(n.group * n.per.group)
gr <- as.factor(rep(1:n.group, each = n.per.group))
means <- tapply(x, gr, mean)
x.res <- x - means[gr]
hist(x.res)

If I look at the residual of a sample in a group of three, the reason for the behaviour is clear:
$
r_1 = x_1 - \text{mean}(x1, x2, x3) = x1 - \frac{x_1+x_2+x_3}{3}=\frac{2}{3}x_1 - x_2 - x_3.
$

Since $r_1$ is a sum of random variables with a not roughly different standard deviation its distribution is quite a bit closer to the normal distribution than the individual terms.
Now assume I have the same situation with real data instead of simulated data. I want to assess whether the ANOVA assumptions regarding normality holds. Most recommended procedures recommend visual inspection of the residuals (e.g. QQ-Plot) or a normality test on the residuals. As my example above this is not really optimal for small group sizes. 
Is there an better alternative when I have many groups of small sizes? 
 A: Working on this answer, not completely done. I have some insight on this but it takes a while to explain. For this, let us consider that standard deviation is biased for small numbers. The reason for this is that if we take any two numbers $a<b$, we arbitrarily assign the sample mean to be $\frac{a+b}2{}$, where the population mean, $\sigma$, could very well be anywhere on the interval between $(a,b)$ or it could be that $\sigma<a$ or $\sigma>b$. This means that on the average $\text{SD}<\sigma$. Thus,  It is only when $n>100$ that this bias becomes small. For a long series of SD's for small numbers of samples each, the SD calculation becomes more precise, and more obviously inaccurate.
Now, rather than throw our hands up in frustration, we can apply the small number correction for our SD's under normal conditions. (Ha! There is a solution to our misery.)
$\frac{SD(n)}{\mu(n)}\,=\,\sqrt{\frac{2}{n-1}}\,\,\,\frac{\Gamma\left(\frac{n}{2}\right)}{\Gamma\left(\frac{n-1}{2}\right)}
 \, = \, 1 - \frac{1}{4n} - \frac{7}{32n^2} - \frac{19}{128n^3} + O(n^{-4})$ see $E[\mu]$
For $n=3$, this is $\Gamma(\frac{3}{2})=\frac{\sqrt{\pi }}{2}\approx0.8862269255$. Which means that we have to divide our SD by that much to estimate $\sigma$.
Now in the case you present you have several other things going on as well. As it happens, the best measure of location of a uniform distribution is not the mean. Although both the sample mean and the sample median are unbiased estimators of the midpoint, neither is as efficient as the sample mid-range, i.e., the arithmetic mean of the sample maximum and the sample minimum, which is the minimum-variance unbiased estimator UMVU estimator of the midpoint (and also the maximum likelihood estimate).
Now to the meat of the matter. If you use the average of the extreme values, the variance of the measure of location will be smaller, provided that your data is truly uniform distributed. It may be normally distributed because a single extreme value tail might well be normal. With only 3-samples, however, the standard deviation will need correction.
