Development task which was carried over from last iteration and we
thought it will be done in two days
If the task got carried from last iteration, then I would say that the task is too large and it should probably be re-analysed and broken down into smaller tasks. You are now looking at a single task running over two or more iterations.
her task almost took the whole iteration - one day left - and
obviously it is impossible for me to do my task now
There might be a lack of communication here. I find it alarming that you are saying this a day before the end of the iteration. Do you already have a test plan in place and you are saying that one day isn't enough to test the feature, or do you not have a test plan yet? Our tester normally raises such an issues three to five days before the end of iteration.
what I suggest to project manager? I do not want my name to be on a
task that for the whole iteration I have been blocked from doing it!
First point I'd like to make is regarding impediments. If you knew that you were impeded by an "unfinished feature" on Monday, then I would state this to my project manager or senior developer on the same day. We have a whiteboard where we write down our name, date and time as well as a person or a third party that we are impeded by. So you could make this clear few days before.
A member of team keeps a track of impediments and analyses them on a weekly basis. This allows them to explain certain holdbacks to the business and make improvements within a team.
Developer should have communicated with their team lead or project manager and make them aware that they are behind. At some point we were running SCRUMs and what we had to close X amount of hours per day. Say I have a task estimated at four hours, and I spent eight hours on it already. Project manager would then run statistics on daily basis and after few days it would be clear to the PM that I'm running behind by 20 odd man hours. So I can say that PM is equally responsible for this.
we can still partially finish like 3 of 20 of those test plans from
that task but definitely not all of them at all.
Now this is probably the most important point. Three out of twenty is 15%. Assuming all your tests pass, you'll be at the most, 15% confident that feature is working. Would you drive a car if you knew that breaks work 15% of the time? You see the point I'm trying to make.
I would personally recommend not to release this feature, gather relevant team members and get some feedback prior to making any changes or going into next iteration. You need to find out what's going wrong and fix it.
To summarise, I think that multiple people are responsible for this issue, including project manager, developer and yourself. This is based on my experience as a software engineer, not a project manager.