Concentrations can usually not be considered normal distributed. I'd guess that you should use log(concentration) instead. But you might check this by a residual analysis.
You asked for a "type of test". Well, the test is likely either a t-test (using the possibly transformed response) or a Chi²-test (when you are going to model the concentration as a gamma-distributed variable in a generalized linear model; this is a possibility, but I think it is simpler for you to try to find a transformation so that the transformed data is in aggreement with the required assumptions of the "standard analysis").
The better question would be: How to analyze such data?
You have two factors: soil (or kind of contamination) and plant species.Both can impact the response (the metal concentration in the soil samples). Their impact can be independent, but it might also be that the impact of a plant depends on the contamination of the soil (and vice versa). This is called an "interaction".
Such data is usually best analyzed using a two-factorial model including the interaction of the factors. Some software do this in the context of a "two-factorial ANOVA (with interaction)", statistically more correct this is termed a "(general) linear model" of the form Y ~ A+B+A:B, where Y is the response (metal conc.), and A and B are the categorical predictors ("factors": soid and species), where A:B indicates the interaction between these factors.
The following links may help you in understanding step-by-step procedure for carrying out a two-way ANOVA using a general linear model. The first-two links are to give you the basis for ANOVA and when to use it as well as the logic behind the General Linear Model. The third link is the simplified procedure on their application.
I agree with Jochen that you certainly should design your analysis such that you catch any potential interactions between treatment type and plant species. Additionally, more information regarding your experimental design and your data will help inform your choice of analysis.
Was this a lab experiment, field experiment, or naturalistic experiment? If lab or field, was each species crossed alone with each soil treatment or were there blocks in which different species existed together? In other words, was the design: 3 x 4 = (2 treatments + 1 no treatment) x (4C1), 3 x 15 = (2 treatments + 1 no treatment) x (4C1+4C2+4C3+4C4), or something in-between?
If species co-mingled in some of your experimental conditions and you code your analysis to represent these conditions, you may find the system is more nuanced than first hypothesized. There may be 2-way interactions between single species and treatment, and/or between two different species. There may be 3-way interactions among two plant species and treatment in which a 2-way interaction between one species and treatment is modulated by the presence of a second species.
If these higher-order interactions exist and you wish to find them, you likely will need more statistical power than if you don't seek them. However, an increase in statistical power also means you are more likely to fail to reject the null hypothesis even if an effect truly does exist.
Was this a naturalistic experiment? If your data is naturalistic, is there information or data regarding other, non-investigatory species in the area? Is there other data about the conditions in general? If so, hopefully you can control for or analyze any possible effects from these other factors thus increasing the likelihood of finding significant results.
One more issue regarding analysis. Is the soil treatment variable strictly categorical? If so, ANOVA is appropriate (categorical factors predict some continuous measure) but you will need post-hoc tests to determine the loci of the effects. If you have parametric data regarding soil treatment, you can design a more rigorous analysis, but will probably need to transform data or smooth your model.
Here is a link that can get you started on transformations and smoothing.
http://dl.acm.org/citation.cfm?id=599382
Or you could run your entire analysis as a regression and just look at the proportional reduction in error by adding parameters for conditions and interactions into your model. (SAS is great for this type of analysis.) This approach allows much more flexibility that conventional ANOVA or ANCOVA because you need not worry as much about the experimental design violating statistical assumptions. This could be important your data is naturalistic, or just if was harder to control certain conditions than you had hoped for.
Here are links about coding for parametric regression analysis with categorical variables.
To consider before you establish an investigation:
Is the contaminated soil the same as the not contaminated concerning soil properties (which influence metal binding and uptake by plants)?
Are all plants growing together in each of these 2 soils (contaminated and control)? If so, you have only 1 repetition for the soil and 1 per plant species. Which is statisticvally not investigable. You must have at least 4 repetitions of each soil with the same ramdomly planted plants per species. Then you can compare the soils for each plant species by simple ANOVA or any other test for comparing means. Test for normal distribution of the data with only 4 repetitions, however cannot be done.
If you mean the normal distribution of metals within the soil, they are not equally distributed except the soil was mixed with the contaminants, and even then many soil analyses have to be done for a reliable mean value.
If you mean the normal distribution of nutrients and contaminats in the plants you have to consider that element concentrations differ among the plant organs and plant organ age and for reliable values you need mean values from a number of plants per species because of the variation among individuals.